J'ai dû changer une méthode de la classe Mage_Catalog_Model_Resource_Eav_Mysql4_Category de Magento. J'ai changé:Surcharger en toute sécurité la méthode Magento Core Resouce
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;
}
Pour:
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;
}
Fondamentalement ajouté ->addAttributeToSelect('thumbnail')
que je avais besoin pour obtenir cet attribut.
Je suis bloqué maintenant sur la façon de surcharger en toute sécurité cette fonction. J'ai copié la classe entière dans local > Mage > Catalog > Model > Resouce > Eav > Mysql4 > Category.php
mais vraiment je n'ai besoin que de remplacer cette fonction.
Comment est-ce que je peux faire ceci?
Merci, je vais vérifier cela – iamjonesy