tiennou7 Posted April 9, 2015 Share Posted April 9, 2015 Bonjour à tous ! Je suis en train de développer un module pour personnaliser les fonctions de Prestashop pour une association. J'ai besoin d'afficher des informations spécifiques aux adhérents sur la page Clients > Afficher, j'ai bien enregistré le hook displayAdminCustomers et la fonction liée dans mon module est correctement appelée lors de l'affichage. Mon problème est le suivant : j'ai besoin d'afficher une de mes vues contenant ces infos additionnelles dans ce hook. Pour l'instant j'ai essayé Module::getTemplatePath('admin/member/info.tpl') (avec $this, s'entend) mais cette fonction ne consulte que les répertoires templates/views/front et hook du module, du thème, ou des overrides de modules dans le thème. Mon appel renvoie un bien beau NULL avec lequel je ne peux rien faire. Y-a-t'il une façon générale de charger une des templates de mon module ? Ou suis-je obligé de générer le chemin d'accès à la main — comme tout développeur Prestashop qui se respecte :-S (mais respect est un bien grand mot dans ce cas précis). Merci pour vos réponses. Link to comment Share on other sites More sharing options...
Mediacom87 Posted April 9, 2015 Share Posted April 9, 2015 Bonjour, utilisez cette variable pour appeler le chemin du fichier actuel. $this->_path Link to comment Share on other sites More sharing options...
J. Danse Posted April 9, 2015 Share Posted April 9, 2015 Bonsoir, Voici un exemple illustré contenu dans un de mes modules: public function hookDisplayAdminCustomersForm() { return $this->display(__FILE__, 'views/templates/hook/displayAdminCustomersForm.tpl'); } Vous pouvez sinon, en effet utiliser $this->_path ou encore utiliser $this->getPathUri() (qui vous retourne la même chose). Link to comment Share on other sites More sharing options...
tiennou7 Posted April 10, 2015 Author Share Posted April 10, 2015 (edited) Merci pour vos réponses. En attendant j'avais simplement déplacé mes templates de hook dans 'view/templates/hook' because Logique™ ce qui satisfait getTemplatePath. J'aime beaucoup $this->display (à part la présence de __FILE__ mais bon), et ça a l'air de marcher avec ma "rustine" précédente — j'ai donc un très satisfaisant $this->display(__FILE__, 'displayAdminCustomers.tpl'); Par contre je suis surpris de ne pas pouvoir passer de variables à display(), et pour l'instant je bazarde mes variables via $this->smarty->assign (ce qui nuit à ma satisfaction précédente). Fait-je bien ? Edited April 10, 2015 by tiennou7 (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now