Une fonctionnalitรฉ de magento vous convient mais n’est pas aussi aboutie que vous le souhaitez? ou encore votre client souhaite un rendu diffรฉrent? Nous allons รฉtudier la procรฉdure dans cet article.
Tout d’abord je vous invite ร vous rendre dans le back office dans system configuration developper puis de choisir le niveau main website. Passez ร Yes les options template path Hints et add block names to hints puis sauvegarder et purger les caches. Vous verrez apparaรฎtre les nom des fichiers de templates et block correspondants sur vos pages en frontend comme le monte la capture d’รฉcran suivante :
Nous allons ici modifier le contenu du block Stock:
frontend/base/default/template/catalog/product/view/type/default.phtml
Mage_Catalog_Block_Product_View_Type_Simple
?Mettre en place la surcharge dans le config.xml
Imaginons que votre namespace est valibus et que votre module s’appelle showstock
Comme vous le voyez on commence par dรฉclarer l’emplacement des classes de block dans notre module, puis la surcharge ou hรฉritage dans le module.
Pour comprendre la syntaxe de la rรฉรฉcriture c’est simple, on dรฉclare d’abord le nom du module rรฉรฉcrit, on indique la balise rewrite puis entre les balises qui contiennent le nom du block du module d’origine ( <product_view_type_simple> ) on indique le nom de notre classe qui contient la rรฉรฉcriture.
?Extension de la classe block du Core
Le plus simple (et plus cohรฉrent) ici est de crรฉer une arborescence identique ร l’origine dans notre module, de plus, c’est รฉvolutif au cas on aurait besoin de surcharger d’autres classes du mรชme module.
Ici rien d’extraordinaire on dรฉfinit juste une fonction qui teste si il y a plus de 20 item en stock, on peut la mettre en application en modifiant le template ainsi :