dfuzion Posted September 2, 2013 Share Posted September 2, 2013 Bonjour à tous, Après des heures à chercher une solution je m'en remets aux experts ! Mon problème semble simple mais je dois avoir raté l'essentiel... La base est category.tpl. Modifié pour un usage particulier. Il affiche le contenu de 4 sous-catégories (level 3). Jusque là tout va bien. Je souhaite afficher un message particulier si aucune de ces 4 sous-cat n'est active (active=0 dans la table category). Et là je bloque.. Voici le code réduit à l'essentiel : {if isset($subcategories)} <!-- Subcategories --> <div id="subcategories"> <ul class="inline_list"> {foreach from=$subcategories item=subcategory} {$prixApartirDe=999} {$MenuComplet=''} {if $subcategory.id_category!=447} <li class="itemMenus"> <a href="{$link->getCategoryLink($subcategory.id_category, $subcategory.link_rewrite)|escape:'htmlall':'UTF-8'}&date={php}echo($_GET['date']);{/php}" title="{$subcategory.name|escape:'htmlall':'UTF-8'}"> <img src="{$css_dir}images/page-menus_{$subcategory.name}.jpg" alt="" /> <div class="detailsMenu"> ........... </div> <div class="aPartirDeMenu">à partir de <br/><span class="tarifMenu">{$prixApartirDe}€</span></div> </a><br /> </li> {/if} {/foreach} </ul> {/if} Je souhaite afficher un message du type "aucun menu disponible" si l'on a désactivé depuis le BO les 4 menus en question. Pas moyen d'y arriver avec une condition if car il semblerai que l'on ne puisse pas utiliser $subcategory.active... Comment faire ? Merci pour votre aide :-) Jérôme Link to comment Share on other sites More sharing options...
webpulser Posted September 2, 2013 Share Posted September 2, 2013 Bonjour, Si l'on regarde de plus près le controlleur Category, on tombe sur assignSubcategories() qui renvoie vers getSubCategories() de la classe catégorie. A vérifier avec ta version de Prestashop, mais normalement elle ne sélectionne que les catégories actives avec cette condition dans la requête SQL: '.($active ? 'AND `active` = 1' : '').' A vérifier de ton coté si cette condition est bien présente. Link to comment Share on other sites More sharing options...
dfuzion Posted September 2, 2013 Author Share Posted September 2, 2013 Merci pour ton retour. Mon Prestsahop est en 1.4.4.0. J'ai ça effectivement : {if isset($category)} {if $category->id AND $category->active} Le soucis qui se présente est lorsque les sous-sous-cat sont désactivées la boucle foreach se lance quand même en affichant non pas 4 mais une trentaine d'ex. du contenu de cette boucle avec des infos vides, dont une image 404 qui pollue l'écran. Et ce n'est pas beau... ! Je voudrait simplement éviter l'exe de cette boucle avec une condition vérifiant si l'item subcategory est actif ou non... L'après-midi dessus. sans résultat... Link to comment Share on other sites More sharing options...
dfuzion Posted September 2, 2013 Author Share Posted September 2, 2013 J'ai répondu un peu à côté de ta réponse... mais en jetant un oeil à la classe category.php j'ai bien celà : '.($active ? 'AND `active` = 1' : '').' Retour à la case départ... Link to comment Share on other sites More sharing options...
webpulser Posted September 3, 2013 Share Posted September 3, 2013 Apparemment tu ne regardes pas la bonne ligne de code du tpl. Les sous-catégories s'affichent avec : {if isset($subcategories)} {foreach from=$subcategories item=subcategory} Pour débugger, tu peux toujours ajouter le champ "active" par la requête SQL. SELECT c.active.. Link to comment Share on other sites More sharing options...
avppy7 Posted May 24, 2016 Share Posted May 24, 2016 (edited) Bonjour les presta, Pour faire simple et pour ne pas faire de conneries en supprimant ou modifiant le code du category.tpl!! Aller dans votre thème > puis dans css > category.css. aller à la ligne 41. Ajouter une ligne de code avec commentaire. *SUBCATEGORIES* ligne 41 #subcategories { 42 display: none; /* modification de l'affichage */ Faites F5 ou rafraîchir la page et voilà vos sub category ne s'affiche plus. C'est de suite plus épurer et plus clair. Cordialement. Edited May 24, 2016 by avppy7 (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