addfieldTofilterは属性値を返しません
-
16-10-2019 - |
質問
remote_image_linkと呼ばれる製品属性があります。このコードを使用して製品を取得するとき:
$mageProduct = Mage::getModel('catalog/product')
->getCollection()
->addFieldToFilter('sku',"1234")->getFirstItem();
そして、属性のremoteimagelinkの値を取得してみてください、
$mageProduct->getRemoteImageLink()
何も返されません。しかし、このコードを追加するとき:
$mageProduct = Mage::getModel('catalog/product')->load($mageProduct->getId());
その後、それは機能し、remote_image属性の値を取得できます。
どうして私は負荷を呼び出さなければならないのですか、私はaddfieldTofileterを使用してロードしませんか
解決
まず、使用します addAttributeToFilter
それ以外の addFieldToFilter
. 。それはそのようにきれいです。
そして、このようにあなたの製品を取得します:
$mageProduct = Mage::getModel('catalog/product')
->getCollection()
->addAttributeToSelect('remote_image_link')
->addAttributeToFilter('sku',"1234")->getFirstItem();
コレクションを取得するとき、すべての属性がコレクションに追加されるわけではありません。必要な属性を手動で追加する必要があります。
何らかの理由で機能しない場合は、属性を設定します remote_image_link
することが Used in product listing
.
所属していません magento.stackexchange