Joomla, modifier le template du menu

Note: ce code est pour Joomla  1.5, mais le principe est le même pour la version 1.6, il devrait en théorie fonctionner aussi.

Dans le cadre d'une refonte graphique d'un site j'ai besoin de distinguer les éléments d'un menu de navigation pairs et impairs, joomla n'offrant pas ce comportement par défaut j'ai du modifier le template du menu.

Pour info, on ne modifie jamais le template d'un composant ou d'un module directement, on le surcharge. On copie le fichier de template dans le dossier du thème, Joomla ira tout d'abord voir si il existe un surchargement du template et le cas échéant utilisera celui par défaut.

Donc dans mon cas j'ai copier le fichier /modules/mod_mainmanu/tmpl/default.php dans le dossier /html/mod_mainmenu/ à la racine de mon thème.

Ensuite pour pouvoir distinguer un élément sur deux dans mon menu j'ai simplement ajouté le code suivant:

$i = 0;
foreach ($node->children() as $child)
{
  if ($child->name() == 'li') {
    $case = ($i%2==0) ? 'odd' : 'even';
    if ($child->attributes('class')) {
      $child->addAttribute('class', $child->attributes('class').' '.$case);
    } else {
      $child->addAttribute('class',' '.$case);
    }
  
    $i++;
  }
}

Du coup suivant si $i est pair ou nom j'ajoute soit la class odd ou even à mon élément de menu.

Il est judicieux de parler avec leurs services en montre rolex pas cher utilisant l'acheteur privé dans le but de vérifier la qualité des services. Comme uniquement lorsque vous êtes victime à l'intérieur de la recherche et l'examen concernant les détails, vous êtes sans doute à venir sur toute une réplique parfaite Breitling vue pour vous-même. Ne perdez pas de temps matériaux tout beaucoup plus rapidement et de considérer l'activité à venir sur montre seiko pas cher toute une grande pièce!

There are some interesting points in time in this article but I don’t know if I see all of them center to heart. There is some validity but I will take hold opinion until I look into it further. Good article , thanks and we want more! Added to FeedBurner as well
_________
capsule nespresso Expert

Bonjour, à quoi correspond la variable $node ??
___________________________
Référenceur et réalisations Web

Poster un nouveau commentaire

Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement.
  • Les adresses de pages web et de messagerie électronique sont transformées en liens automatiquement.
  • Tags HTML autorisés : <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Les lignes et les paragraphes vont à la ligne automatiquement.

Plus d'informations sur les options de formatage

Type the characters you see in this picture. (verify using audio)
Type the characters you see in the picture above; if you can't read them, submit the form and a new image will be generated. Not case sensitive.