Как добавить AttributeToFilter AND и OR одновременно?
Я хотел бы сделать фильтр, который выглядит следующим образом:
(псевдокод)
SELECT * FROM Products WHERE
(`attribute_foo` LIKE 'bar' AND `attribute_bar` LIKE 'foo')
OR (`attribute_far` LIKE 'boo');
Я знаю как построить OR
условие, предоставляя массив, но не оба.
Спасибо вам
2 ответа
"from"=>$fromValue, "to"=>$toValue
"like"=>$likeValue
"neq"=>$notEqualValue
"in"=>array($inValues)
"nin"=>array($notInValues)
"eq"=>$equal
"nlike"=>$notlike
"is"=>$is
"gt"=>$greaterthan
"lt"=>$lessthan
"gteq"=>$greterthanequal
"lteq"=>$lessthanequal
"finset"=>$unknown
"date"=>true, "to" => $now
$collection = Mage::getResourceModel('customer/customer_collection')
->addNameToSelect()
->addAttributeToSelect('email')
->addAttributeToSelect('created_at')
->addAttributeToSelect('group_id')
->addFieldToFilter('entity_id', array('from'=>20, 'to'=>30))
->addFieldToFilter('name', array('like'=>'%cindy%'));
Вы можете использовать объект данных Magento для фильтрации:
$product = Mage::getModel('catalog/product')
->getCollection()
->addAttributeToFilter("attribute_code", $value);
print_r($product->getItems());