Les avertissements suivants se sont produits :
Warning [2] Undefined array key 0 - Line: 1640 - File: showthread.php PHP 8.2.18 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/showthread.php 1640 errorHandler->error_callback
/showthread.php 915 buildtree




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[Résolu]Mettre un menu sur 2 colonnes
#6
Ok, j'ai trouvé: {assign var=tot value=$numColl*0.5+$numCan}

Mais il est absurde, ce langage. Déjà dans la doc, ils mettent des guillemets ou des apostrophes autour des expressions au petit bonheur la chance. Ensuite, il faut écrire le calcul exactement comme je l'ai fait, sinon ça marche pas. Pas de parenthèses, ne pas commencer avec un chiffre... J'ai pas trouvé toutes ces règles dans la doc !

Bon, si ça intéresse quelqu'un, mon code ressemble à ça. Si tu as des remarques, Bess (ou autres), elles sont les bienvenues:

{* CSS classes used in this template:
.currentpage - The active/current page
.bullet_sectionheader - To style section header
hr.separator - To style the ruler for the separator *}

{if $count > 0}

{counter start=0 name=coll assign=numColl}
{counter start=0 name=can assign=numCan}

{foreach from=$nodelist item=node}

{if !isset($start_level)}
{assign var="start_level" value=$node->depth}
{/if}

{if $node->type != 'sectionheader' and $node->type != 'separator'}
{if $node->depth == $start_level}
{counter name=can}
{elseif $node->depth == $start_level+1}
{counter name=coll}
{/if}
{/if}

{/foreach}


À ce jour, il y a {eval var=$numColl} collectivités membres réparties dans {eval var=$numCan} cantons:

{assign var=tot value=$numColl*0.5+$numCan}

{assign var=change value=0}
{counter start=0 name=nod assign=numNode}
<div class="liste_membres">
<div class="liste_colonne1">

{foreach from=$nodelist item=node}

{if $node->depth > $node->prevdepth}
{repeat string="<ul>" times=$node->depth-$node->prevdepth}
{elseif $node->depth < $node->prevdepth}
{repeat string="</li></ul>" times=$node->prevdepth-$node->depth}
</li>
{elseif $node->index > 0}
</li>
{/if}

{if $node->depth == $start_level and $node->type != 'sectionheader' and $node->type != 'separator'}
{if $numNode>=$tot && $change==0}
</div>
<div class="liste_colonne2">
{assign var=change value=1}
{/if}
{counter name=nod}
{counter name=nod}
<h3 id="titre_membres">{$node->menutext}</h3>

{elseif $node->depth == $start_level+1 and $node->type != 'sectionheader' and $node->type != 'separator'}
{counter name=nod}
<li><a href="{$node->url}"{if $node->target ne ""} target="{$node->target}"{/if}> {$node->menutext} </a>
{/if}

{/foreach}

</div> {*2ème colonne*}
</div> {*liste_membres*}
</div>

{/if}

PS: apparemment, il faut fermer un <div> à la fin que je n'ai pas ouvert dans mon menu. Comment ça se fait ???


Messages dans ce sujet

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)