我希望通过一些属性过滤产品集合,包括diy_kit_price属性(已添加新属性),如下所示。
价格范围:
我尝试了几种但没有运气。
工作代码:当我按一个价格范围过滤时:
$products = Mage::getModel('catalog/product')->getCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('type_id', 'configurable')
->joinField('category_id', 'catalog/category_product', 'category_id', 'product_id = entity_id', null, 'left')
->addAttributeToFilter('category_id', array(
array('finset' => '37')
))
->addAttributeToSort('name', 'asc')
->addAttributeToFilter('diy_kit_price', array('gt' => 0))
->addAttributeToFilter('diy_kit_price', array('lt' => 5000));
不工作代码:当我按一个价格范围过滤时:
$products = Mage::getModel('catalog/product')->getCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('type_id', 'configurable')
->joinField('category_id', 'catalog/category_product', 'category_id', 'product_id = entity_id', null, 'left')
->addAttributeToFilter('category_id', array(
array('finset' => '37')
))
->addAttributeToSort('name', 'asc')
->addAttributeToFilter('diy_kit_price', array('gt' => 0))
->addAttributeToFilter('diy_kit_price', array('lt' => 5000))
->addAttributeToFilter('diy_kit_price', array('gt' => 10000))
->addAttributeToFilter('diy_kit_price', array('lt' => 15000));
还有其他方法可以过滤。我们可以使用具有多个价格范围的纯SQL进行过滤。
提前致谢。
答案 0 :(得分:5)
得到解决方案...... Hurreee ......: - )
->addFieldToFilter('diy_kit_price',
array(array('from'=>'0','to'=>'5000'),
array('from'=>'15000','to'=>'20000'))
)