0

私は単純に見えることをしようとしていますが、うまくいきません

私はMagento 1.5.1を実行しています。

元の商品と同じ属性が設定されている商品をすべて商品ページに表示したいと考えています。
例えば:

アイテム A には XYZ 属性があります。xyz 属性を持つ他のすべてのアイテムを表示してください。

これまでに試したことは何もありません...

編集:

$collection = Mage::getModel('catalog/product')->getCollection();
$collection->addAttributeToSelect('name');      
$collection->addAttributeToSelect('orig_price');        

//filter for products who name is equal (eq) to Widget A, or equal (eq) to Widget B
$collection->addFieldToFilter(array(
        array('name'=>'orig_price','eq'=>'Widget A'),
        array('name'=>'orig_price','eq'=>'Widget B'),           
));

foreach ($collection as $product) {
        //var_dump($product);
        var_dump($product->getData());
}

編集2:試しました:

 $collection = Mage::getModel('catalog/product')->getCollection(); $collection->addAttributeToSelect('name');
$collection->addAttributeToSelect('color');

//filter for products who name is equal (eq) to Widget A, or equal (eq) to Widget B 
$collection->addAttributeToFilter(array( array('name'=>'color','eq'=>'red')
));

foreach ($collection as $product) { //var_dump($product); 
var_dump($product->getData()); }

そして何も表示されなかった

4

1 に答える 1

0

まず、「Used in Product Listing」の属性値が yes に設定されていることを確認してから、以下のコードを試してください。お役に立てると思います。

$collection = Mage::getModel('catalog/product')->getCollection()->addAttributeToFilter('color', 'red');
foreach ($collection as $product) { //var_dump($product); 
var_dump($product->getData()); }

フィルタリングされたデータを取得したら、要件に従って他の選択およびフィルター属性を追加します。

于 2013-10-17T09:31:43.727 に答える