4

一旦过滤器变为活动状态,它会返回 0 个项目,因此它不会再显示在“购物选项”中。对于我的自定义分层导航,我需要获取并显示这些项目。我知道一些扩展已经在这样做(并在项目旁边提供复选框),但我想知道如何自己做。

4

2 回答 2

1

事实上,这是一个非常复杂的问题,因为您无法真正从有源过滤器中获取项目。这个“过滤器”不再是一个过滤器,它现在是一个状态,因此不能给你任何项目(查看app\design\frontend\base\default\template\catalog\layer\state.phtml它并将其与 filter.phtml 进行比较)。你能做的就是与app\code\core\Mage\Catalog\Model\Layer模型打架,尤其是app\code\core\Mage\Catalog\Model\Resource\Eav\Mysql4\Layer\Filter\Attribute.php. 它是一种资源,可以完成所有工作,包括添加层、计算层的产品...如果您熟悉 Zend Select 对象和一点 mysql,您可以通过分层导航轻松实现您想要的任何内容。

据我所知,大多数商业模块使用 AJAX 来模拟一些新的分层导航功能(它们并没有真正搞砸它)。

如果您不熟悉 Magento 开发,分层导航可能是最糟糕的起点......

于 2010-12-19T11:14:47.327 回答
1

如果您希望分层导航过滤器在过滤器的结果为 0 时显示,那么您所要做的就是编辑产品属性并设置在分层导航中使用=可过滤(无结果)。

于 2010-12-17T05:43:57.993 回答