我希望我的搜索结果来自name
匹配或 description
匹配。
$custom_collection = Mage::getModel('catalog/product')->getCollection()
->addAttributeToSelect('*')
->addAttributeToSelect('type')
->addAttributeToSelect('price')
->addAttributeToFilter(array('attribute' => 'name', 'like' => '%' . $queryText . '%'))
->addAttributeToFilter(array('attribute' => 'description', 'like' => '%' . $queryText . '%'))
->addFieldToFilter('attribute_set_id', array(11, 4));
这是我需要合并的两个特定行
->addAttributeToFilter(array('attribute' => 'name', 'like' => '%' . $queryText . '%'))
->addAttributeToFilter(array('attribute' => 'description', 'like' => '%' . $queryText . '%'))
答案 0 :(得分:0)
您可以使用以下代码进行OR条件。
$custom_collection->addAttributeToFilter(
array(
array('attribute'=> 'name','like' => '%' . $queryText . '%'),
array('attribute'=> 'description','like' => '%' . $queryText . '%')
)
);
答案 1 :(得分:0)
尝试以下方法:
$collection->addAttributeToFilter(
array(
array('attribute'=> 'name','like' => ''%' . $queryText . '%''),
array('attribute'=> 'description','like' => ''%' . $queryText . '%''),
)
);
这将输出格式为
的WHERE子句 WHERE ((name LIKE ''%' . $queryText . '%'') OR (description LIKE ''%' . $queryText . '%'')