Многоуровневая навигация Magento по пользовательской коллекции продуктов

Я работал над специальным модулем для Magento (версия 1.8.0.0), который показывает список продуктов, связанных с определенным продуктом.

Для достижения это я создал свой собственный модуль, перезаписав класс Mage_Catalog_Block_Product_List .

В основном это работает:

С контроллера я ловлю продукты entity_id и сохраняю продукт в реестре, так что я могу использовать его в моем собственном письменном блоке, который называется list.php

Вот метод, который заполняет коллекцию продуктов:

protected function _getProductCollection()
{
    if (is_null($this->_productCollection)) {
        $prod = Mage::registry('chosenproduct');
        $this->_productCollection = $prod->getRelatedProductCollection()
            ->addAttributeToSelect('required_options')
            ->addAttributeToFilter(array(array('attribute'=>'accessory_manufacturer','neq'=>false)))
            ->addAttributeToSort('position', 'asc')
            ->addStoreFilter()
            ->setPageSize(30)
            ->setCurPage(1);
        ;

        $this->_addProductAttributesAndPrices($this->_productCollection);
        Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($this->_productCollection);
        $this->setProductCollection($this->_productCollection);
    }

    return $this->_productCollection;
}

I также добавил следующее в макет.xml моего настраиваемого модуля, чтобы убедиться, что отображается многоуровневая навигация:

<reference name="left">
        <block type="catalog/layer_view" name="catalog.leftnav" after="currency" template="catalog/layer/view.phtml"/>
    </reference>

Многоуровневая навигация отображается, но кажется, что все продукты принимаются как коллекция вместо настраиваемой коллекции, которая используется в методе, который я добавил выше.

Я также знаю, что могу получить каталог / слой с помощью этого $ layer = Mage :: getSingleton ('catalog / layer');

В классе слоя также есть метод под названием prepareProductCollection и setCollection, но для по какой-то причине я не могу заставить его работать.

Любая помощь по этому поводу?

В основном я хочу иметь многоуровневую навигацию для продуктов, которые находятся в пользовательской коллекции.

Спасибо,

15
задан Keyur Shah 30 March 2015 в 12:35
поделиться