2012-07-20 98 views
2

与看到此网站的客户合作,并希望得到类似的内容。Magento - 将默认过滤器添加到产品集合

http://www.boylstontradingco.com/shop/sale

正如你可以看到,当你浏览到“销售”类别中的“买卖”过滤器默认情况下,在左侧的导航分层激活。我知道分层导航的一部分从名为getActiveFilters()的函数中获取信息。有没有办法在代码中或通过管理员默认添加活动过滤器?任何帮助将非常感激。

谢谢!

回答

2

很简单:

$model = Mage::getModel('catalog/layer_filter_category'); 
$item = Mage::getModel('catalog/layer_filter_item'); 
$model->getLayer()->getState()->addFilter(
    $item->setFilter($model) 
     ->setLabel('Sale') 
); 
+0

我没弄清楚如何将其添加到文件state.phtml实现这虽然似乎是对正在出售的物品过滤不。现在我有一个属性叫销售,这是一个下拉菜单,其中有两个选项1“正在销售”,另一个是“全价”。我改变了你给我的代码:$ model = Mage :: getModel('catalog/layer_filter_category'); \t $ item = Mage :: getModel('catalog/layer_filter_item'); \t $模型 - > getLayer() - >的getState() - > addFilter( \t $用品 - >使用setfilter($模型) \t - > setLabel( '促销') \t); – Bueno 2012-08-07 18:57:16

+0

更具体地说,我需要做的是创建一个实例,将网站上的所有产品都添加到集合中,然后根据它们的商品是否有特殊价格进行过滤。当用户正在查看“销售”页面时。诀窍是分层导航仍然需要工作。 – Bueno 2012-08-07 19:18:38