Toutes les clefs pour réussir dans le e-commerce

Mes modules Prestashop

Override qui ne marche pas avec prestashop 1.5

Voici une petite astuce qui va sans doute vous faire gagner du temps.
Lorsque vous désirez faire un override d’un module ça ne marche pas toujours, pourquoi ? Voici l’une des raisons possible.
Exemple:
Vous avez un module avec l’architecture suivante:

Vous désirez faire un override du template “opartproductvideo.tpl”, par conséquent vous créez un fichier du même nom que vous ajoutez dans le dossier “votre_theme/modules/opartproductvideo/views/templates/hook” et … ça ne marche pas, votre fichier n’est jamais pris en compte.

Pourquoi ? Tout simplement parceque votre tpl est appelé dans votre fonction de hook avec ce code:


return $this->display(__FILE__, 'opartproductvideo.tpl');

Ceci est un raccourci, Prestashop devine tout seul la structure de votre module et y retrouve votre tpl mais du coup impossible de faire un override.

Deux solutions pour régler ce problème, soit vous remplacez le code ci-dessus par celui-ci:


return $this->display(__FILE__, 'views/templates/hook/opartproductvideo.tpl');

Soit vous placez votre fichier opartproductvideo.tpl dans le dossier “votre_theme/modules/”.

La deuxième solution est moins intrusive car elle ne modifie pas le module de base, mais moins logique car l’architecture est perdue… dommage.

Poster un Commentaire

Soyez le premier à commenter !

Recevoir un email pour
avatar
wpDiscuz