Безопасно переопределить метод ресурсов ядра Magento - PullRequest
1 голос
/ 02 ноября 2011

Мне пришлось изменить метод класса Magento Mage_Catalog_Model_Resource_Eav_Mysql4_Category.Я изменил:

public function getChildrenCategories($category)
{
        $collection = $category->getCollection();
        /* @var $collection Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Collection */
        $collection->addAttributeToSelect('url_key')
            ->addAttributeToSelect('name')
            ->addAttributeToSelect('all_children')
            ->addAttributeToSelect('is_anchor')
            ->addAttributeToFilter('is_active', 1)
            ->addIdFilter($category->getChildren())
            ->setOrder('position', 'ASC')
            ->joinUrlRewrite()
            ->load();
        return $collection;
}

На:

public function getChildrenCategories($category)
{
            $collection = $category->getCollection();
            /* @var $collection Mage_Catalog_Model_Resource_Eav_Mysql4_Category_Collection */
            $collection->addAttributeToSelect('url_key')
                ->addAttributeToSelect('name')
                ->addAttributeToSelect('all_children')
                ->addAttributeToSelect('thumbnail')
                ->addAttributeToSelect('is_anchor')
                ->addAttributeToFilter('is_active', 1)
                ->addIdFilter($category->getChildren())
                ->setOrder('position', 'ASC')
                ->joinUrlRewrite()
                ->load();
            return $collection;
}

В основном добавил ->addAttributeToSelect('thumbnail'), поскольку мне нужно было получить этот атрибут.

Я застрял накак безопасно переопределить эту функцию.Я скопировал весь класс в local > Mage > Catalog > Model > Resouce > Eav > Mysql4 > Category.php, но на самом деле мне нужно только переопределить эту одну функцию.

Как я могу это сделать?

1 Ответ

1 голос
/ 02 ноября 2011

Вы должны переопределить всю коллекцию ресурсов в вашем модуле. Вы можете прочитать, как переопределить коллекцию ресурсов в этой ветке форума .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...