如何在列表页面中显示唯一的父类别产品

时间:2015-04-09 10:13:32

标签: magento

如何在列表页面中显示唯一的父类别产品,同时我还需要启用Is Anchor,以便我的图层导航能够正常工作。

1 个答案:

答案 0 :(得分:0)

这是非常糟糕的解决方案!不要在家里尝试!!!

回答你的问题。您正在寻找的方法是:

  

Mage_Catalog_Model_Resource_Product_Collection

public function addCategoryFilter(Mage_Catalog_Model_Category $category)
{
    $this->_productLimitationFilters['category_id'] = $category->getId();
    if ($category->getIsAnchor()) {
        unset($this->_productLimitationFilters['category_is_anchor']);
    } else {
        $this->_productLimitationFilters['category_is_anchor'] = 1;
    }

    if ($this->getStoreId() == Mage_Catalog_Model_Abstract::DEFAULT_STORE_ID) {
        $this->_applyZeroStoreProductLimitations();
    } else {
        $this->_applyProductLimitations();
    }

    return $this;
}

您只需将if ($category->getIsAnchor()) {更改为if (!($category->getIsAnchor())) {

即可

但请不要忘记 此修复程序可能会导致一些问题 。例如,计算某些类别中的产品数量。

更好地告诉我们,您需要启用is_anchor属性的目的是什么?