dandrimontp Posted February 16, 2016 Share Posted February 16, 2016 Bonjour, J'ai créé un module personnel tout simple qui n'affiche qu'une phase et qui est dans la colonne de gauche (registerHook('leftColumn')). J'ai importé celui-ci dans prestashop et je l'ai positionné dans "displayLeftColumn" uniquement. Il s'affiche correctement à gauche mais le problème est qu'il s'affiche 15 fois de suite...je ne comprends pas pourquoi... Quelqu'un aurait une idée pour résoudre ce problème ? Par avance merci. Link to comment Share on other sites More sharing options...
Mediacom87 Posted February 16, 2016 Share Posted February 16, 2016 Bonjour, difficile de vous aider sans connaitre le code source de ce module. Link to comment Share on other sites More sharing options...
dandrimontp Posted February 16, 2016 Author Share Posted February 16, 2016 Voici le code source du fichier PHP : <?php if (!defined('_PS_VERSION_')) exit; class codedefaut extends Module { public function __construct() { $this->name = 'codedefaut'; $this->tab = 'Code defaut clim'; $this->version = 1.0; $this->author = 'patrice dandrimont'; $this->need_instance = 0; parent::__construct(); $this->displayName = $this->l('CLIM - Code defaut'); $this->description = $this->l('Module permettant de savoir quelle est l\'anomalie de la clim selon le code défaut affiché.'); $this->confirmUninstall = $this->l('Etes-vous certain de vouloir supprimer le module "CLIM - Code défaut" ?'); } public function install() { if (parent::install() == false OR !$this->registerHook('leftColumn')) return false; return true; } public function uninstall() { if (!parent::uninstall()) Db::getInstance()->Execute('DELETE FROM `'._DB_PREFIX_.'codedefaut`'); parent::uninstall(); } public function hookLeftColumn($params) { global $smarty; return $this->display(__FILE__, 'codedefaut.tpl'); } public function hookRightColumn($params) { return $this->hookLeftColumn($params); } } ?> et le code source du fichier TPL : <!-- Block codedefaut --> <div id="codedefaut_block_left" class="block"> <h4>Code défaut!</h4> <div class="block_content"> <ul> Votre clim est en panne et vous ne savez pas ce qu'il convient de faire ? <li><a href="{$base_dir}modules/codedefaut/codedefaut_page.php" title="Cliquez ici">Cliquez ici</a></li> </ul> </div> </div> <!-- /Block codedefaut --> Je ne pense pas que le souci vienne des fichiers sources mais je peux me tromper... Merci de votre aide. Link to comment Share on other sites More sharing options...
Prestaspirit Posted February 16, 2016 Share Posted February 16, 2016 Il y a pas d'erreur dans le tpl ni dans le contrôleur mise à part la variable global smarty qu'on utilise plus, pour trouver sans accès direct ça va être coton Link to comment Share on other sites More sharing options...
dandrimontp Posted February 16, 2016 Author Share Posted February 16, 2016 Bonjour Pretashop Addict, L'environnement est sur mon poste en local...dur de donner un accès... Pour la global Smarty, comment aurais-je du faire pour ne plus l'utiliser ? Merci. Link to comment Share on other sites More sharing options...
Prestaspirit Posted February 17, 2016 Share Posted February 17, 2016 Bonjour, Il y a forcement une boucle quelque part, faut faire des testes pour voir d'ou ça peux venir. Pour smarty il faut utiliser le context $this->context->smarty Link to comment Share on other sites More sharing options...
dandrimontp Posted February 17, 2016 Author Share Posted February 17, 2016 (edited) Bonjour Prestashop Addict, Pour $smarty, il suffit juste de faire ainsi ? public function hookLeftColumn($params) { /* global $smarty; */ $this->context->smarty return $this->display(__FILE__, 'codedefaut.tpl'); } public function hookRightColumn($params) { return $this->hookLeftColumn($params); } Sinon, Ok pour faire les tests, mais je ne sais pas par où commencer et comment les réaliser ... tu peux m'aider en ce sens ? Merci Edited February 17, 2016 by dandrimontp (see edit history) Link to comment Share on other sites More sharing options...
dandrimontp Posted February 18, 2016 Author Share Posted February 18, 2016 Bonjour, J'ai trouvé..:en fait c'est dans un layout, mon module s'y trouvait autant de fois que je l'avais installe... Merci 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