Многофункциональный фильтр атрибута на сборе продуктов не работает

magento.stackexchange https://magento.stackexchange.com//questions/57932

  •  12-12-2019
  •  | 
  •  

Вопрос

Я пытаюсь отфильтровать коллекцию продукта на основе атрибута, который является атрибутом Multi-Select.Вот мой код,

$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://jmpmaniac.wordpress.com/2012/03/03/filter-product-collection-for-multiedlect-attribute-in-magento/

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top