我试图基于一个属性过滤产品集合,该属性是多选择属性。这是我的代码,

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

$collection2->addAttributeToSelect('name'); 
$collection2->addAttributeToSelect('manufacturer');
$collection2->addAttributeToSelect('printer_family');
$collection2->addAttributeToSelect($attributeCode);

$collection2->addFieldToFilter(array(
array('attribute'=>'manufacturer','eq'=>$ctname), 
)); 


$collection2->addFieldToFilter(array(
array('attribute'=>'printer_family','eq'=>$value), //this filter is not working
)); 
.

变量$值被检索如下

$product->getAttributeText($attributeCode);
.

谁能告诉我我做错了什么?

有帮助吗?

解决方案

只是改变

->addFieldToFilter(array(
array('attribute'=>'printer_family','eq'=>$value), //this filter is not working
)); 
.

addFieldToFilter('printer_famil',
    array(
        array('finset'=> array($val1)),
        array('finset'=> array($val2)),
        array('finset'=> array($val3)),
    )
);
.

检查链接:

https://jmpmaniacs.wordpress.com/2012/03/03/filter-product-collection-for-fulti-select-attribute-in-magento/

许可以下: CC-BY-SA归因
scroll top