2

请原谅之前是否有人问过这个问题。我发现了几篇关于加载属性的帖子,但我无法根据我所阅读的内容加载我需要的那些。

我正在尝试创建一个选择框以在应用程序内但不属于它的页面上显示自定义属性的值(只是一个自定义 PHP 产品显示页面)。我知道我很接近,我只是不知道调用这个的正确方法是什么。

这是我到目前为止所拥有的:

$attributeInfo = Mage::getResourceModel('eav/entity_attribute_collection')
                            ->setCodeFilter('color_attribute')
                            ->getFirstItem();

如果我打印 $attributeInfo 我会得到一个包含属性信息的数组,但我不知道如何仅显示仅适用于当前产品的 color_attribute 的名称和值。

echo "<pre>"; print_r($attributeInfo->getData()); echo "</pre>";

基本上,我想在选择框中加载适用于特定产品的所有“color_attribute”。这样,用户可以查看产品并通过从选择中选择颜色来选择其颜色。

谢谢!

4

1 回答 1

3

最好使用属性配置。

/* @var $attr Mage_Eav_Model_Entity_Attribute */
$entityType = 'catalog_product';
$attrCode   = 'some_attr';
$attr = Mage::getModel('eav/config')->getAttribute($entityType,$attrCode);

var_dump($attr->getSource()->getAllOptions());
于 2012-04-14T12:41:04.617 回答