質問

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.

ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top