Php 安全覆盖Magento核心资源方法
我不得不更改Magento的Mage_Catalog_Model_Resource_Eav_Mysql4_Category类的方法。我改变了:Php 安全覆盖Magento核心资源方法,php,zend-framework,magento,Php,Zend Framework,Magento,我不得不更改Magento的Mage_Catalog_Model_Resource_Eav_Mysql4_Category类的方法。我改变了: public function getChildrenCategories($category) { $collection = $category->getCollection(); /* @var $collection Mage_Catalog_Model_Resource_Eav_Mysql4_Categor
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;
}
致:
基本上添加了->addAttributeToSelect(“缩略图”)
,因为我需要获得该属性
我现在被困在如何安全地覆盖这个函数上。我已经将整个类复制到local>Mage>Catalog>Model>resource>Eav>Mysql4>Category.php中,但实际上我只需要重写这一个函数
如何执行此操作?您必须覆盖模块中的整个资源集合。您可以在此阅读如何覆盖资源集合。您必须覆盖模块中的整个资源集合。您可以在此中阅读如何覆盖资源集合
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;
}