romain g Posted April 7, 2011 Share Posted April 7, 2011 Bonjour,Comme indiqué dans le sujet, je cherche à modifier le module "blockcategories" pour qu'il n'affiche par exemple qu'un certain nombre de sous catégorie. Parce qu'actuellement, dans mon menu, j'affiche toutes les catégories ainsi que toutes les sous catégories de ces catégories. Ainsi je ne voudrais en afficher que par exemple 5 ou 6 (les premiéres).Donc j'ai pensé qu'il fallait modifier le module "blockcategories", dans les foreach, et if.Les codes sont les suivants :blockcategories.tpl : <!-- Block categories module --> {foreach from=$blockCategTree.children item=child name=blockCategTree} {if $smarty.foreach.blockCategTree.last} {include file="$branche_tpl_path" node=$child last='true'} {else} {include file="$branche_tpl_path" node=$child} {/if} {/foreach} category-tree-branch.tpl : {$node.name|escape:html:'UTF-8'} {if $node.children|@count > 0} {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} {/if} Merci d'avance, Link to comment Share on other sites More sharing options...
cobolian Posted April 7, 2011 Share Posted April 7, 2011 Je ferai également ça comme ça. En testant l'index (http://www.smarty.net/docsv2/fr/language.function.foreach.tpl#foreach.property.index). Link to comment Share on other sites More sharing options...
romain g Posted April 7, 2011 Author Share Posted April 7, 2011 Ok merci.Donc j'ai modifié un peu le code, mais ça ne fonctionne pas, je pense que je n'ai pas tout compris a la soluce... {$node.name|escape:html:'UTF-8'} {if $node.children|@count > 0} {foreach from=$node.children item=child name=categoryTreeBranch} {if $smarty.foreach.foo.index % 5 == 0} {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} {/if} {/foreach} {/if} Quand je fais cela, aucune sous catégories ne s'affiche. Link to comment Share on other sites More sharing options...
romain g Posted April 7, 2011 Author Share Posted April 7, 2011 Normal que ca ne marche pas sur mon post précédent, j'ai laissé le nom "foo". J'ai donc changé pas "categoryTreeBranch". De cette manière, toute les sous catégories ne sont pas affiché. Par contre je ne sais pas pourquoi, mais certaines catégories affiche 2 sous catégories, d'autres 5, etc ...Il faudrait que toutes les catégories affichent le même nombre de sous catégories.Merci Link to comment Share on other sites More sharing options...
cobolian Posted April 8, 2011 Share Posted April 8, 2011 {if $smarty.foreach.foo.index < 6} a la place de {if $smarty.foreach.foo.index % 5 == 0}Le % c'est pour le modulo. Link to comment Share on other sites More sharing options...
romain g Posted April 8, 2011 Author Share Posted April 8, 2011 Ah ouai ok. J'ai testé ça marche.Merci beaucoup de ton aide 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