我认为我尝试了所有内容并阅读了所有内容,但我对在Magento中过滤产品集合感到非常困惑。我创建了一个新的产品属性'syncron_state',但我无法通过此过滤器过滤product_collection。当我尝试按核心属性进行过滤时,它可以正常工作,而且很清楚。
$productsCollection = Mage::getResourceModel('catalog/product_collection')
->addAttributeToFilter('sku', array('eq' => '000001'))
->setCurPage(1)->setPageSize(10)
->load();
但如果我尝试按属性过滤,我什么也得不到。
$productsCollection = Mage::getResourceModel('catalog/product_collection')
->addAttributeToFilter('syncron_state', array('eq' => '1'))
->setCurPage(1)->setPageSize(10)
->load();
syncron_state是Yes / No属性,据我所知,它在数据库中有一个整数值(但我在过滤时尝试了true / false和yes / no)。
我尝试了所有版本的addAttributeToFilter和AddFieldToFilter。
哦,我正在与Magento 1.7.0.0战斗
答案 0 :(得分:2)
使用syncron_state
作为过滤器的集合应按预期工作,至少对于syncron_state
设置为yes
的产品而言。
没有获得产品的一个可能原因是,您未能将新的syncron_state
属性添加到正确的属性集(这是必须的)。
另一个可能的原因是,您只是忘了将至少一个产品的syncron_state
属性设置为Yes
。