Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5

Template de menu spécifique
#1

Citation :#~~~~~ NE PAS SUPPRIMER CE BLOC ~~~~~
#~ Version du CMS: 1.8.2
#~ Nom de l'hébergeur :
#~ Informations Système :
#~~~~~ NE PAS SUPPRIMER CE BLOC ~~~~~

Bonjour à tous,

Je travaille sur un menu déroulant pour un site et j'ai trouvé ce code proposé par JeanLeChauve dans un autre sujet :

{if $count > 0}
<ul id="nav">
{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 == 1}
<li><a href="{$node->url}">{$node->menutext}</a>
{else}
<li><a href="{$node->url}"><span>{$node->menutext}</span></a>
{/if}
{/foreach}
{repeat string="</li></ul>" times=$node->depth-1}</li>
</ul>
{/if}

Il me convient quasi parfaitement.
Le problème, c'est qu'il affiche quelque chose du style :

<ul id="nav">
<li>Catégorie 1</a>
<ul>
<li><a href="#">Catégorie 2</a>
<ul>
<li><a href="#">Catégorie 2.1></a></li>
<li><a href="#">Catégorie 2.2></a></li>
</ul>
</li>
...

Alors qu'il me faudrait plutôt :
<ul id="nav">
<li>Catégorie 1</a></li>
<li><a href="#">Catégorie 2</a>
<ul>
<li><a href="#">Catégorie 2.1></a></li>
<li><a href="#">Catégorie 2.2></a></li>
</ul>
</li>

En gros, je souhaite une balise de fermeture </li> pour la catégorie de 1er niveau et pour les catégories qui n'ont pas d'enfants.
Pour les autres, il me faut un <li> <a>nom de la catégorie</a> <ul> <li></li> <li></li> </ul> </li> (comme le code de Jean Le Chauve).

Je n'arrive pas à modifier le code de Jean Le Chauve pour arriver à ce résultat.
Merci d'avance pour votre aide,
Répondre
#2

Bonsoir,
Et le code du template de menu par défaut ne te convient pas ? Parce que c'est ce qu'il génère normalement.
Répondre


Atteindre :


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