tonymx227 Posted December 8, 2015 Share Posted December 8, 2015 (edited) Bonjour, Je voudrais savoir comment lister en PHP les catégories enfantes de la catégorie "Accueil" dans mon thème Prestashop? Je voudrais le faire dans mon fichier de template "header.tpl". J'ai essayé ceci mais ça ne marche pas : <? $cats = Category::getCategories((int)($cookie->id_lang), true, false); ?> <? print_r($cats); ?> Anthony, Edited December 9, 2015 by tonymx227 (see edit history) Link to comment Share on other sites More sharing options...
Olecorre Posted December 9, 2015 Share Posted December 9, 2015 Bonjour, Vous devez mettre votre code php entre {php} et {/php} dans le tpl http://www.smarty.net/docsv2/fr/language.function.php.tpl Cela dis c'est pas recommander de mettre du code php directement dans un tpl Cordialement Link to comment Share on other sites More sharing options...
tonymx227 Posted December 9, 2015 Author Share Posted December 9, 2015 Bonjour, merci. Est-ce que cette fonction PHP me permet de récupérer les catégories enfantes de la catégorie "Accueil"? Link to comment Share on other sites More sharing options...
Marvin Lamart Posted December 9, 2015 Share Posted December 9, 2015 (edited) Bonjour, Si vous ne souhaitez récupérer qu'un seul "niveau" d'enfant, ce sera avec la fonction getChildren: public static function getChildren($id_parent, $id_lang, $active = true, $id_shop = false) Si vous désirez récupérer toute l'arborescence de vos catégories depuis la catégorie Accueil, ce sera la fonction getNestedCategory: public static function getNestedCategories($root_category = null, $id_lang = false, $active = true, $groups = null, $use_shop_restriction = true, $sql_filter = '', $sql_sort = '', $sql_limit = '') Pour sa part, getCategories, vous retournera toutes les catégories disponibles. public static function getCategories($id_lang = false, $active = true, $order = true, $sql_filter = '', $sql_sort = '', $sql_limit = '') Bonne journée Edited December 9, 2015 by Marvin Lamart (see edit history) Link to comment Share on other sites More sharing options...
tonymx227 Posted December 10, 2015 Author Share Posted December 10, 2015 Bonjour, Vous devez mettre votre code php entre {php} et {/php} dans le tpl http://www.smarty.net/docsv2/fr/language.function.php.tpl Cela dis c'est pas recommander de mettre du code php directement dans un tpl Cordialement {php}echo "test";{/php} ça ne marche pas même avec un simple "echo"... Link to comment Share on other sites More sharing options...
tonymx227 Posted December 29, 2015 Author Share Posted December 29, 2015 Personne ? Link to comment Share on other sites More sharing options...
Marvin Lamart Posted December 29, 2015 Share Posted December 29, 2015 J'aurais tendance à dire qu'utiliser du PHP dans un fichier de template est une mauvaise pratique. Vous devriez utiliser les controllers prévus à cet effet pour récupérer vos catégories et les injecter dans votre template grâce aux variables smarty Link to comment Share on other sites More sharing options...
tonymx227 Posted February 1, 2016 Author Share Posted February 1, 2016 (edited) Ok, donc comment je peux envoyer dans "header.tpl" les catégories enfantes de la catégorie "Accueil"? Je dois modifier quel fichier? Car je peux le faire en PHP avec cette fonction : $filleAccueil = Category::getChildren($id_parent, $id_lang, $active = true, $id_shop = false); Mais je ne sais pas où le faire pour que "header.tpl" recoive "$filleAccueil" dans le template... Edited February 1, 2016 by tonymx227 (see edit history) 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