Zogto Posted May 24, 2010 Share Posted May 24, 2010 Salut à tous,Je souhaiterai dans product.php afficher un TPL en fonction de la catégorie du produit // si produit appartient à catégorie X afficher product2.php // Sinon colis afficher product.php if ($category=="20") //où 20 correspond à id_category de la catégorie X { $smarty->display(_PS_THEME_DIR_.'product2.tpl'); } else { $smarty->display(_PS_THEME_DIR_.'product.tpl'); } Mais ça ne marche pas. je pense que le problème vient de ma variable $category == "20" Que dois-je mettre SVp ?Merci d'avance. Link to comment Share on other sites More sharing options...
Divine Posted May 24, 2010 Share Posted May 24, 2010 Bonjour,La variable serait plutôt de cette forme je pense: {if $id_category == 20} Link to comment Share on other sites More sharing options...
Zogto Posted May 24, 2010 Author Share Posted May 24, 2010 Merci Divine pour ta réponse,la modification a effectuée est dans le fichier product.PHP donc la synthaxe smarty { } ne semble pas marcher.J'ai cependant essayé: if ($id_category == "20") mais ça ne marche pas non plus. Link to comment Share on other sites More sharing options...
Divine Posted May 24, 2010 Share Posted May 24, 2010 Dans ce cas tu peux essayer autrement:Dans ton fichier product2.tpl, tu mets au début la variable {if $id_category == 20} (en n'oubliant pas de refermer la condition à la fin par {/if}) comme ça si la catégorie en cours est la 20 cela affichera ce tpl.Et dans ton fichier product.tpl, au début aussi tu mets la variable {if $id_category != 20} ce qui affichera donc ce tpl si la catégorie en cours est différente de la 20.Je ne suis que moyennement sure de mon coup mais tu peux tenter Link to comment Share on other sites More sharing options...
Zogto Posted May 24, 2010 Author Share Posted May 24, 2010 ça ne marche pas puisque l'affichage du .tpl doit être précisé dans le product.PHPTon système serait pratique pour une restriction d'accès mais cela ne résout pas le problème en amont malheureusement. :-/ Link to comment Share on other sites More sharing options...
Divine Posted May 24, 2010 Share Posted May 24, 2010 Raaa oui c'est vrai j'avais zappé que le tpl est appelé dans le fichier php...Eh bien pourquoi pas dans ce cas regrouper tes 2 fichier tpl et faire comme je t'ai dit dans mon précédent post mais dans un seul et même fichier (product.tpl) ? Link to comment Share on other sites More sharing options...
Zogto Posted May 24, 2010 Author Share Posted May 24, 2010 Divine je crois que tu m'as aidé sans le vouloir et merci :-P Je vais supprimer le product2.tpl et mettre toutes les conditions que tu m'as inspiré dans le seul fichier product.tplJe teste ça et je reviens Link to comment Share on other sites More sharing options...
Zogto Posted May 24, 2010 Author Share Posted May 24, 2010 erf désolé j'écrivai en même temps :-) Link to comment Share on other sites More sharing options...
Divine Posted May 24, 2010 Share Posted May 24, 2010 Lol bin tu vois les grands esprits se rencontrent, on a pensé à la même chose en même temps Link to comment Share on other sites More sharing options...
Zogto Posted May 24, 2010 Author Share Posted May 24, 2010 Lol oui on est sur la bonne voie mais on a pas pensé à tout parce que ça ne marche pas complètement.J'ai pourtant mis dans product.tpl : {if $id_category != 20} {/if}) {if $id_category == 20} {/if}) Il ne reconnait que la première condition. C'est bizarre ... là je bloque ... :sick: Link to comment Share on other sites More sharing options...
Divine Posted May 24, 2010 Share Posted May 24, 2010 En fait je pense que tu ne devrais mettre qu'une condition comme ça:Affichage par défaut... (donc le product.tpl normal sans condition)et après:{if $id_category == 20} => affichage différent {/if} Link to comment Share on other sites More sharing options...
Zogto Posted May 24, 2010 Author Share Posted May 24, 2010 Merci encore pour ton aide Divine,Je viens de tester mais ça ne change rien.C'est l'halu Link to comment Share on other sites More sharing options...
BVince Posted May 24, 2010 Share Posted May 24, 2010 Bonjour,je viens de regarder les fichiers product.php et product.tpl et je vois que la variable $id_category n'existe pas dans ces 2 fichiers, il faudrait peut être essayer d'afficher simplement cette variable pour voir si elle contient quelque chose, non ?EDIT : je viens de faire un autre test et je trouve plutôt ceci : id_category_current donc ta condition serait : {if $id_category_current == 20} ton affichage {/if} Link to comment Share on other sites More sharing options...
Zogto Posted May 24, 2010 Author Share Posted May 24, 2010 Merci pour ta réponse également Bvince et tu me confirmes le doute que j'avais sur la variable.J'ai d'ailleurs essayé {if $product->id_category == 20} mais c'est le même résultat.Quelle variable appeler dans ce cas dans product.tpl ? Si quelqu'un sait . :ohh: Link to comment Share on other sites More sharing options...
Divine Posted May 24, 2010 Share Posted May 24, 2010 Tu as raison BVince, je pense que ça va marcher avec cette syntaxe.EDIT: Je viens de faire un test avec cette syntaxe et ça marche. Link to comment Share on other sites More sharing options...
Zogto Posted May 24, 2010 Author Share Posted May 24, 2010 erf je viens de voir ton edit je test ça Link to comment Share on other sites More sharing options...
BVince Posted May 24, 2010 Share Posted May 24, 2010 Je t'ai donné le nom de la variable juste au dessus. Link to comment Share on other sites More sharing options...
Zogto Posted May 24, 2010 Author Share Posted May 24, 2010 un GROS merci à Divine et BVince pour leur aide.Je vous aime !!! Voilà c'est dit !!! %-PProblème RESOLU ! Link to comment Share on other sites More sharing options...
BVince Posted May 24, 2010 Share Posted May 24, 2010 Alors tu édites ton premier POST et tu modifies le titre avec [RESOLU] devant, au plaisir... :-) Link to comment Share on other sites More sharing options...
Divine Posted May 24, 2010 Share Posted May 24, 2010 Ouf héhé 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