kiki57 Posted May 11, 2011 Share Posted May 11, 2011 Bonjour Je travail Prestashop 1.4 et je voudrai savoir comment afficher un lien supplémentaire en fonction du groupe du client.le but étant d'afficher ce lien supplémentaire sur la page myaccount.phpmerci d'avance Link to comment Share on other sites More sharing options...
devoox Posted May 11, 2011 Share Posted May 11, 2011 Hello,Je ne l'ai jamais fait mais si tu n'as pas de réponse d'ici ce soir, je te ferai un tuto. Link to comment Share on other sites More sharing options...
kiki57 Posted May 11, 2011 Author Share Posted May 11, 2011 Merci DevooxJe viens de trouver une solutions qui semble marcherdans mon .tpl :{if id_default_group == 1} //// ici code avec liens pour client du groupe 1{else}//// ici code avec lien pour autre groupes de client{/if} Link to comment Share on other sites More sharing options...
devoox Posted May 11, 2011 Share Posted May 11, 2011 Bon, très bien! Ça va nous être utile Link to comment Share on other sites More sharing options...
kiki57 Posted May 12, 2011 Author Share Posted May 12, 2011 Bon correction ça ne marche pas .... Avec ce code il ne m'affiche que les lien des autres groupes quelque soit le groupe du client ...Quelqu'un a une autre idée ????merci d'avance Link to comment Share on other sites More sharing options...
Benoit62200 Posted September 13, 2012 Share Posted September 13, 2012 Bonjour, As-tu trouvé la solution ? Link to comment Share on other sites More sharing options...
franckm1000 Posted September 13, 2012 Share Posted September 13, 2012 (edited) Pour pouvoir afficher un lien en fonction du groupe, il faut trouver si le client appartient bien au groupe choisi. Par exemple, si vous voulez afficher dans mon-compte un lien avec les clients uniquement appartenant par exemple au groupe 3 (groupe ID 3), dans le fichier controllers/MyAccountController.php il faut ajouter après la ligne: public function process() { Le code suivant: //On assigne la variable $cookie global $cookie; //On récupère la méthode pour trouver les groupes d'un client $groups=Customer::getGroupsStatic($cookie->id_customer); //On teste chaque résultat du tableau foreach($groups as $group) { //Si le client appartient au groupe désiré (ici 3) if ($group==3) { //On créé la variable smarty qui servira de test self::$smarty->assign('mon_groupe','1'); //On stoppe la boucle, plus besoin de continuer break; } } Ensuite dans le fichier TPL on va simplement tester si la variable existe et si oui on affiche le texte spécifique pour le groupe 3: {if $mon_groupe}test si j'appartiens au groupe 3{/if} Testé sur 1.4.9 Edited September 13, 2012 by franckm1000 (see edit history) Link to comment Share on other sites More sharing options...
Delmael Posted January 14, 2013 Share Posted January 14, 2013 Bonjour, Cette astuce ne marche plus sous prestashop 1.5.x Quelqu'un sait-t-il comment faire? Merci, Link to comment Share on other sites More sharing options...
franckm1000 Posted January 14, 2013 Share Posted January 14, 2013 Si ça marche il suffit simplement d'y mettre dans la fonction initcontent() plutôt que process() Link to comment Share on other sites More sharing options...
sebpolok Posted March 21, 2014 Share Posted March 21, 2014 (edited) Bonjour, le code ne semble pas fonctionner pour prestashop 1.6, une idée des modifications à apporter ? Merci seb Edited March 21, 2014 by sebpolok (see edit history) Link to comment Share on other sites More sharing options...
pitchart Posted March 16, 2016 Share Posted March 16, 2016 A la recherche également de cela pour la 1.6.1.4 Link to comment Share on other sites More sharing options...
beniz5967 Posted June 30, 2016 Share Posted June 30, 2016 Bonjour, Quelqu'un a trouvé une solution pour le 1.6 ? Link to comment Share on other sites More sharing options...
Marvin Lamart Posted July 1, 2016 Share Posted July 1, 2016 Bonjour, Il vous faut override la méthode "initContent" du FrontController et y rajouter: // On récupère le groupe par défaut $customerDefaultGroup = Group::getCurrent(); // On récupère tout les groupes de l'utilisateur. $customerGroups = Customer::getGroupsStatic($this->context->customer->id); // On assigne nos variables groupes à smarty $this->context->smarty->assign(array( 'customerDefaultGroup' => $customerDefaultGroup, 'customerGroups' => $customerGroups )); Vous aurez alors accès à 2 nouvelles variables dans vos templates: $customerDefaultGroup: qui contiendra le groupe par défaut de l'utilisateur. $customerGroups: qui contiendra un tableau de tout les groupes auquel l'utilisateur appartient. 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