对于我的模块,我需要创建一个使用各种addAttributeToFilter修饰符构建的自定义productCollection。但是,我不知道如何将这样的集合放入像默认的magento那样的产品列表中。 所以基本上我想创建一个预先过滤的产品列表,任何人都可以就如何开始这样的事情给我一些建议吗?
编辑:只是为了澄清,我可以制作收藏品,而不是像默认产品清单那样展示它。
答案 0 :(得分:2)
经过数小时的挣扎,我找到了一个解决方案: 我重写了Mage_Catalog_Block_Product_List并使用以下命令创建了我自己的_getProductCollection:
$collection = parent::_getProductCollection();
$collection->addAttributeToFilter('attribute', array('operator' => 'value'));
/* more filters go here */
$this->_productCollection = $collection;
return $this->_productCollection;
这似乎是让原始产品列表正常工作而没有任何错误或类别问题的唯一方法。
感谢Guerra !!
答案 1 :(得分:2)
在list.phtml中使用它:
$_productCollection->clear()
->addAttributeToFilter('attribute_set_id', array('eq' => 63))
->load();
答案 2 :(得分:1)
您可以尝试:
Mage::getModel('catalog/product')->getCollection()->addAttributeToFilter();
http://www.magentocommerce.com/wiki/1_-_installation_and_configuration/using_collections_in_magento