ckarone Posted October 10, 2011 Share Posted October 10, 2011 Bonjour, J'ai besoin de modifier le module Blockcategories pour qu'il n'affiche que les sous-catégories de la catégories en cours. J'ai cherché dans le forum mais je n'ai pas trouvé de solution pour PS-1.4.... Merci d'avance Ckarone Link to comment Share on other sites More sharing options...
xmatox Posted October 11, 2011 Share Posted October 11, 2011 salut, dans le fichier category-tree-branch.tpl tu dois avoir : <li {if $last == 'true'}class="last"{/if}> <a href="{$node.link|escape:html:'UTF-8'}" {if $node.id == $currentCategoryId}class="selected"{/if} title="{$node.desc|escape:html:'UTF-8'}">{$node.name|escape:html:'UTF-8'}</a> {if $node.children|@count > 0} <ul> {foreach from=$node.children item=child name=categoryTreeBranch} {if $smarty.foreach.categoryTreeBranch.last} {include file=$branche_tpl_path node=$child last='true'} {else} {include file=$branche_tpl_path node=$child last='false'} {/if} {/foreach} </ul> {/if} </li> Je sais pas si tu veux qu'il affiche quand meme les catégories principales ou si tu veux seulement que les sous catégories en cours. bref, pour enlever l'affichage des catégories principales, je pense qu'il faut supprimer la ligne : <a href="{$node.link|escape:html:'UTF-8'}" {if $node.id == $currentCategoryId}class="selected"{/if} title="{$node.desc|escape:html:'UTF-8'}">{$node.name|escape:html:'UTF-8'}</a> et pour que ce soit que les sous catégories de la catégorie en cours il faut rajouter une condition pour l'affichage des sous cat, du style : {if $node.id == $currentCategoryId} ... {/if} ce qui donnerai : {if $node.id == $currentCategoryId} {if $node.children|@count > 0} <ul> {foreach from=$node.children item=child name=categoryTreeBranch} {if $smarty.foreach.categoryTreeBranch.last} {include file=$branche_tpl_path node=$child last='true'} {else} {include file=$branche_tpl_path node=$child last='false'} {/if} {/foreach} </ul> {/if} {/if} voila, j'ai pas testé mais ça doit être un truc dans ce style Link to comment Share on other sites More sharing options...
ckarone Posted October 11, 2011 Author Share Posted October 11, 2011 Merci xmatox pour la réponse, j'ai uniquement besoin des sous-catégories en cours et ta solution ne fonctionne pas. Avec {if $node.id == $currentCategoryId} tu filtres toutes les catégories Ckarone Link to comment Share on other sites More sharing options...
arno_64 Posted October 11, 2011 Share Posted October 11, 2011 Bonjour ckarone, Je ne pense pas que ce soit réalisable en ne modifiant que le .tpl. En effet, le menu est construit récursivement. Il te faut connaitre dans ton tpl, l'id de la catégorie "mère" des sous catégorie que tu veux afficher. Pour cela il faut modifier le fichier blockcategories.php pour trouver l'id en question et qu'il le renvoi ensuiite au tpl. Il ne restera plus ensuite qu'a filtrer l'affichage de ton menu suivant cet id. Je ne sais pas si je suis très clair, mais en ayant regarder brièvement les fichiers du module blcokcategories je pense que c'est un des moyens (je pense le plus simple) d'accomplir ce que tu cherches a faire. ... mais je peux tout a fait me tromper. J’espère que ça pourra t'aider. Arnaud. Link to comment Share on other sites More sharing options...
xmatox Posted October 12, 2011 Share Posted October 12, 2011 pardon, j'avais oublié un élément pour l'affichage {if empty($node.children)} <a href="{$node.link|escape:html:'UTF-8'}" {if $node.id == $currentCategoryId}class="selected"{/if} title="{$node.desc|escape:html:'UTF-8'}">{$node.name|escape:html:'UTF-8'}</a> {/if} <li {if isset($last) && $last == 'true'}class="last"{/if}> {if $node.id == $currentCategoryId} <ul id="lilumenu{$node.id}" style="display:block;"> {*<ul id="lilumenu{$node.id}" {if $catParent==$node.id}style="display:block;"{/if}>*} {foreach from=$node.children item=child name=categoryTreeBranch} {if isset($smarty.foreach.categoryTreeBranch) && $smarty.foreach.categoryTreeBranch.last} {include file="$branche_tpl_path" node=$child last='true'} {else} {include file="$branche_tpl_path" node=$child last='false'} {/if} {/foreach} </ul> {/if} </li> j'ai testé chez moi ça marche Link to comment Share on other sites More sharing options...
ckarone Posted October 12, 2011 Author Share Posted October 12, 2011 Merci à vous pour le retour mais ta solution xmatox ne fonctionne pas pour moi (PS-1.4.4.1) j’obtiens des listes (<li></li>) vides et des sous-catégories d'une autre catégorie . Ckarone Link to comment Share on other sites More sharing options...
arno_64 Posted October 14, 2011 Share Posted October 14, 2011 Je cherche a faire la meme chose que toi mais directement dans la page category.php Je suis a deux doigts de trouver une solution. si j'y arrive, je pourrais te dire les choses a modifier. Je précise quand même que c'est des modifs dans le code php. je ne sais pas si tu es à l'aise avec ce genre de code... Arnaud. Link to comment Share on other sites More sharing options...
ckarone Posted October 18, 2011 Author Share Posted October 18, 2011 merci arno_64, oui pas de problème avec PHP vas-y !! Je regarde justement de ce coté là maintenant!! ckarone Link to comment Share on other sites More sharing options...
ckarone Posted October 18, 2011 Author Share Posted October 18, 2011 Bon j'ai une réponse à ma question !! Ligne 125 trouvez public function getTree($resultParents, $resultIds, $maxDepth, $id_category=1, $currentDepth = 0) et remplacer par public function getTree($resultParents, $resultIds, $maxDepth, $id_category, $currentDepth = 0) Ensuite ligne 179 trouver $blockCategTree = $this->getTree($resultParents, $resultIds, Configuration::get('BLOCK_CATEG_MAX_DEPTH')); Et remplacer par $blockCategTree = $this->getTree($resultParents, $resultIds, Configuration::get('BLOCK_CATEG_MAX_DEPTH'), $id_category); Voilà cela fonctionne sur PS 1.4.5.1 sur les pages catégories mais pas sur les pages produits!! Ckarone Link to comment Share on other sites More sharing options...
ckarone Posted October 19, 2011 Author Share Posted October 19, 2011 Bon étape suivante, afficher la catégorie du produit sur la page produit !! Une idée? Ckarone Link to comment Share on other sites More sharing options...
rachel_sophlays Posted May 24, 2012 Share Posted May 24, 2012 (edited) Bonjours, Certes la discussion date de 2011, mais je me trouve dans le même cas que toi et je voulais savoir si depuis tu as trouvé la solution pour que le menu s'affiche dans la page produits? Merci d'avance Edited May 24, 2012 by rachel_sophlays (see edit history) Link to comment Share on other sites More sharing options...
zef72 Posted March 20, 2013 Share Posted March 20, 2013 Bonjour, Je me trouve également dans le même cas, et je n'ai pas trouvé encore la solution. Est ce que la solution a été trouvé ? Merci Zef 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