Magento,只是无法选择自定义属性

时间:2012-10-31 16:55:32

标签: php magento

您好我正在尝试在我的脚本中选择自定义属性。

这是我的代码

$collection = Mage::getModel('catalog/product')->getCollection()

->addAttributeToSelect('jan')

->addAttributeToSelect('name')

->addAttributeToSelect('upc')

->addAttributeToSelect('ean')

->addAttributeToSelect('price')

->addAttributeToSelect('cost_price')

->addAttributeToSelect('subtitle')

->addAttributeToSelect('url_key')

->addAttributeToSelect('brand')

->addAttributeToFilter('sku', array('eq' => '30000387'));

然后我做一个foreach循环来通过$ collection作为$ item

我可以使用$ item-> getData('在此处插入atttribute代码')来提取所有这些值

除了cost_price,无论我做什么,我似乎无法拉动cost_price我已经尝试过

$item->getData('cost_price')
$item->getCostPrice()

我尝试重新编制索引并删除缓存以防万一,但无济于事。这个值肯定在我选择的产品中填充。

非常感谢。

2 个答案:

答案 0 :(得分:2)

如果您始终希望加载cost_price属性(不必每次都必须在产品上调用load),那么它可能是一个更好的解决方案,使它始终通过以下方式加载:

  • 转到后端,目录 - >管理属性 - >选择您的属性,并为“前端产品视图页面上的可见”和“产品列表中使用”选择“是”
  • 在目录config.xml中添加eav属性:

    <product>
        <collection>
            <attributes>
                <name/>
                <url_key/>
                <price/>
                <special_price/>
                .....
                <cost_price/>
            </attributes>
        </collection>
    </product>
    

(不要编辑核心文件,创建自己的模块)

答案 1 :(得分:0)

试试这个

 <?php echo $_product->getResource()->getAttribute('cost_price')->getFrontend()->getValue($_product); ?>
相关问题