Jump to content

wadzat

Members
  • Posts

    6
  • Joined

  • Last visited

About wadzat

  • Birthday 08/30/1976

Profile Information

  • Location
    Paris

wadzat's Achievements

Newbie

Newbie (1/14)

0

Reputation

1

Community Answers

  1. Solution trouvée ici : https://www.prestashop.com/forums/topic/442911-solved-custom-hook-wont-show/ Pourquoi les hooks réagissent différemment, selon qu'ils se trouvent sur la home ou sur une catégorie ? Mystère... Sur la home, pas besoin d'ajouter 'display'. Sur la catégorie, ça ne fonctionne pas si on ne met pas "display" dans le nom du hook...
  2. Bonjour, J'ai déjà créé de nombreux hooks, notamment pour une home assez complexe, et tout fonctionnait à merveille : - registerHook() dans l'install de l'override du module, et ajout de la méthode hookNomDuHook() - un extend du controller front pour passer le hook dans smarty, avec hook::exec() - et il n'y avait plus qu'à afficher le hook dans le template de mon thème. Mais voilà que sur le même site, je crée un hook pour la page catégorie,et là, rien à faire pour l'afficher... Pourtant j'ai bien suivi mes 3 étapes listées ci-dessus... Le seul indice que j'ai trouvé jusqu'ici : - Dans le menu "positions", le hook n'apparaît que si l'on coche la case "Afficher les points d'accroche invisibles". Qu'est-ce qui fait qu'un hook est invisible ? Je n'ai rien trouvé en base de données (rien dans ps_hook, ni dans ps_hook_module). Pour moi, les points d'accroche invisibles, c'était pour les fonction du genre pre-traitement, ou post-traitement, alors pourquoi Prestashop déclare que mon hook est un point d'accroche invisible ? Merci d'avance, toute aide sera fortement appréciée.
  3. Finalement, la solution la plus simple était présente d'origine dans prestashop : Modules et Services -> positions -> Live Edit (en haut à droite de la page)
  4. La home de Prestashop est livrée bardée de modules, et ça peut virer au cauchemard quand on veut faire le ménage. (C'est pour ça que je hais les hooks, c'est l'horreur de tracer qui affiche quoi...) Ma méthode simple pour savoir à chaque instant quel hook affiche quel module (sur prestashop 1.6.1.4) Editer la classe Hook et rajouter : ligne 425 : echo '<!-- HOOK : '.$hook_name.' -->'; ligne 526 : echo '<!-- MODULE : '.$array['module'].' -->'; Comme ça, vous aurez toutes les infos dans le source de la page. Je trouve vraiment dommage que Prestashop ne le fasse pas 'de base'.
  5. oups, je n'avais pas vu le bouton code, j'ai édité mon message pour les traductions, le problème est que je ne vois pas les traductions de mon module apparaitre dans l'outil traduction => les arrays permettant d'entrer les traductions ne sont pas générés.
  6. Bonjour, j'essaie de développer un module de Store Locator, mais je rencontre deux problèmes : - mon hook pour la colonne de gauche n'est pas pris en compte (le bloc n'apparait pas) - les arrays de traductions ne se remplissent pas Voici le code, merci d'avance pour toute aide : storelocator.php : <?php class StoreLocator extends Module { public function __construct () { $this->name = 'storelocator'; $this->tab = 'Blocks'; $this->version = '1.0'; parent::__construct(); $this->page = basename(__FILE__, '.php'); $this->displayName = $this->l('Store Locator'); $this->description = $this->l('Store Locator Module, by Nicolas Perrot.'); $this->confirmUninstall = $this->l('Are you sure you want to delete Store Locator ?'); } public function install() { if(!parent::install()) return false; if (!$this->registerHook('leftColumn')) return false; return true; } public function uninstall() { if(!parent::uninstall()) return false; return true; } public function getContent() { $html = ''; if(Tools::isSubmit('submitStoreLocator')) { echo('aaa'); } $html .= ''.$this->l('Store Locator').' <form action="'.$_SERVER['REQUEST_URI'].'" method="post"> '.$this->l('Settings').' <input class="button" type="submit" name="submitStoreLocator" value="'.$this->l(' Save ').'" /> </form>'; return $html; } public function hookLeftColumn($params) { global $smarty; $this->display(__FILE__, 'storelocator.tpl'); } function hookRightColumn($params) { return $this->hookLeftColumn($params); } } ?> storelocator.tpl : {l s='Store Locator' mod='storelocator'} pom pompom en.php et fr.php : <?php global $_MODULE; $_MODULE = array(); (ces deux derniers fichiers de traduction ne se remplissent pas tous seuls, comme je l'avais lu sur un tuto...)
×
×
  • Create New...