我希望通过magento中包含值数组的属性来获取产品集合过滤器。
例如:获取颜色来自阵列('红色'蓝色'绿色')或品牌来自阵列的产品(' X'' Y'' Z').....
注意:属性过滤器不会是交集。我提到了 OR
。因此,它将加入以形成最终产品集合
答案 0 :(得分:1)
您可以尝试这样的事情:
$productCollection =Mage::getModel('catalog/product')->getCollection()
$productCollection ->addFieldToFilter(
array('color', 'brand'),
array(
array('in' => array('red', 'blue', 'green')),
array('in' => rray('x','y'))
)
);
但是color是一个select属性,你应该传递选项的红色/蓝色/绿色值id
答案 1 :(得分:0)
看看@ code to filter product by attribute by color in magento和Magento - Wiki - Using Collections in Magento
$filter = array(
'attribute' => 'color',
'in' => array('red', 'blue', 'green'), // you may need get the code id of each color
),
array(
'attribute' => 'brand',
'in' => array('x','y'),
),
));
$productCollection =Mage::getModel('catalog/product')->getCollection()
->addAttributeToFilter($filter)