Fredj Posted October 19, 2008 Share Posted October 19, 2008 Bonjour,pour le module catégories, dans le fichier php on trouve: function hookLeftColumn($params) { global $smarty; return $this->display(__FILE__, 'blockunmodule.tpl'); } function hookRightColumn($params) { return $this->hookLeftColumn($params); } autrement dit, le module catégorie est associé par défaut au hook de la colonne de gauche, et si on le met à droite, il sera toujours redirigé vers la colonne de gauche et y sera affiché.c'est ce que me confirme aussi le tuto pdf de Laurent Raulier sur la créa de modules je cite page 14: La syntaxe utilisée est ici celle que les utilisateurs de Zend Framework connaissentsurement : la concaténation de hook et nom_du_hook : hookLeftColumn ethookRightColumn.Dans ce cas, si on veut « accrocher » un module (sa partie interface visible) àdroite, il est redirigé vers la colonne de gauche... On ne fait pas toujours ce quel’on veut dans la vie !!! Or j'ai voulu placer le block categorie à droite via le BO, modules->positions->greffer un module, celui à été dupliqué et placé sur la colonne de droite, normal comme si de rien n'était :gulp: j'ai du louper quelque chose ou je n'ai pas compris le fonctionnement des deux fonctions hookRightColumn et hookLeftColumn.merci de m'éclairer la lanterneFredj Link to comment Share on other sites More sharing options...
Fredj Posted October 19, 2008 Author Share Posted October 19, 2008 personne ne travaille le dimanche ? Link to comment Share on other sites More sharing options...
SotEW Posted October 19, 2008 Share Posted October 19, 2008 Alors...Prestashop fonctionne comme cela :Un module a un id, un hook aussi. il existe une table dans la base de donnée (ps_hook_module) qui correspond à l'enregistrement d'un module a un (ou plusieurs) hook, avec sa position.Ainsi, lorsque tu greffes un module, tu rajoute une ligne à cette table. le module est inscrit dans le hook.Les fonctions hookxxxx, où xxx est un nom de hook, sont automatiquement appelée par le site. Ainsi, si ton bloc catégorie est inscrit dans le hook de la colonne de gauche, la fonction hookLeftColumn est appelée, et elle renvoie un .tpl avec certaines variables initialisée.Dans le cas du bloc catégorie, l'affichage dans le module de gauche ou de droite sera le même. Ainsi, plutôt que de dupliquer inutilement la méthode hookLeftColumn pour en faire une hookRightColumn qui fera exactement la même chose, la fonction hookRightColumn renvoi au site ce que renvoi hookLeftColumn.C'est magique. J'adore.Ainsi, ça me fait mal de le dire, mais le tuto pdf de Laurent Raulier, qui m'a beaucoup aidé dans mes début, est inexact sur ce point là.Alors, au lieu de : La syntaxe utilisée est ici celle que les utilisateurs de Zend Framework connaissent surement : la concaténation de hook et nom_du_hook : hookLeftColumn et hookRightColumn. Dans ce cas, si on veut « accrocher » un module (sa partie interface visible) à droite, il est redirigé vers la colonne de gauche… On ne fait pas toujours ce que l’on veut dans la vie !!! Moi, je dirais :La syntaxe utilisée est ici celle que les utilisateurs de Zend Framework connaissent surement : la concaténation de hook et nom_du_hook : hookLeftColumn et hookRightColumn. Dans ce cas, si on veut « accrocher » un module (sa partie interface visible) à droite, il faudra s'assurer que la méthode hookRightColumn est personnalisée. Cependant, si l'affichage proposé par la méthode hookLeftColumn est adaptée à la colonne de gauche, rien ne nous empeche de rediriger la méthode hookRightColumn vers hookLeftColumn. On peux faire ce qu'on veut dans la vie !!! 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