Magento按自定义属性过滤产品

时间:2012-08-28 15:01:56

标签: magento-1.7

我认为我尝试了所有内容并阅读了所有内容,但我对在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战斗

1 个答案:

答案 0 :(得分:2)

使用syncron_state作为过滤器的集合应按预期工作,至少对于syncron_state设置为yes的产品而言。

没有获得产品的一个可能原因是,您未能将新的syncron_state属性添加到正确的属性集(这是必须的)。

另一个可能的原因是,您只是忘了将至少一个产品的syncron_state属性设置为Yes