Magento : Ajouter un attribut personnalisé à la grid des produits via les observers
Vous avez forcément sur votre boutique Magento, des attributs produits spécifiques à votre site.
Si vous souhaitez les afficher dans la grid des produits, et pouvoir filtrer les produits via cet attribut, voici comment procéder.
Le méthode la plus propre est de passer par les observers de Magento, ceci évitera de créer des surcharges pouvant entrainer des problèmes de compatibilités.
Je passe volontairement toute la partie liée à la création du module pour se concentrer uniquement sur la partie spécifique à l’affichage de l’attribut dans la grid.
Pour que notre modification fonctionne, le module va se greffer sur les événements suivants :
- core_block_abstract_to_html_before : Pour afficher l’attribut dans la grid des produits
- eav_collection_abstract_load_before : Pour charger les valeurs de l’attribut dans la collection des produits
Voici donc les données à faire figurer dans le fichier de configuration config.xml de votre module :
Veuillez à bien remplacer le nom du modèle ( hhennes_productgridfilter ) par le nom de votre module
<adminhtml> <events> <core_block_abstract_to_html_before> <observers> <product_filter_reference> <class>hhennes_productgridfilter/observer</class> <method>onBlockHtmlBefore</method> </product_filter_reference> </observers> </core_block_abstract_to_html_before> <eav_collection_abstract_load_before> <observers> <product_filter_reference_load> <class>hhennes_productgridfilter/observer</class> <method>onEavLoadBefore</method> </product_filter_reference_load> </observers> </eav_collection_abstract_load_before> </events> </adminhtml> |
Passons à présent à l’édition de l’observer du module qui sera situé dans modulename/Model/Observer.php…
Magento : Ajouter un attribut personnalisé à la grid des produits via les observers Lire la suite »