我们有这样的类别结构:
根
- 类别1
----类别1 - 1
-------类别1 - 1 - 1
-------类别1 - 1 - 2
----类别1 - 2
- 第2类
----类别2 - 1
----类别2 - 2
通常,当用户点击根类别时,它显示为空。第1类和第2类也是空的(错误的是,它可能是1或2个产品)。
我想,当点击一个类别时,会显示所有子类别(和子类别的子类别)的产品(+类别本身的产品)。
我们无法使用is_anchor,因为此行为仅适用于三个商店内容中的一个,而is_anchor是全球。
我的想法是重写Mage_Catalog_Block_Product_List
,因此它在请求类别时会返回子类别的产品,但是通过在所有类别集合请求中添加过滤器等不是更简单的方法吗?
类似问题的答案不完整或使用is_anchor。
答案 0 :(得分:1)
我现在自己解决了这个问题。
我创建了一个重写Mage_Catalog_Model_Category::getProductCollection()
步骤如下:
parent::getProductCollection()
is_active
过滤它们。->addAttributeToFilter('entity_id', array('in' => array_unique($result)));