Aucune sous-rubriques et sous-sous-rubriques ne sont courantes
Faire ses propres templates
Thelia v1.3.1/v1.3.2
1. Les Templates 2. Les paramètres optionnels 3. Mon premier template 1/3 : Mon menu de navigation 3.1 Mon premier template 2/3 : Aucune sous-rubriques et sous-sous-rubriques ne sont courantes 3.2 Mon premier template 3/3 : Le cas d'une sous-sous-rubrique courante
3.1 Aucune sous-rubriques et sous-sous-rubriques ne sont courantes
Mettons en place l'affichage des sous-rubriques non courantes et courantes classées par ordre de classement manuel.
Ajoutons deux boucles RUBRIQUE à l'intérieur de la boucle RUBRIQUE THELIA_BLOC_SOUS_MENU
<!-- sous rubriques --> <THELIA_BLOC_SOUS_MENU type="RUBRIQUE" parent="#ID" pasvide="1" classement="manuel"> <!-- sous rubriques non courantes --> <THELIA_MENU_SOUS_RUBRIQUE type="RUBRIQUE" id="#ID" courante="0"> <li><a href="#URL" class="sousmenu1">#TITRE</a></li> </THELIA_MENU_SOUS_RUBRIQUE> <!-- sous rubriques courantes --> <THELIA_MENU_SOUS_RUBRIQUE_COURANTE type="RUBRIQUE" id="#ID" courante="1"> <li><a href="#URL" class="selected1">#TITRE</a></li> </THELIA_MENU_SOUS_RUBRIQUE_COURANTE> </THELIA_BLOC_SOUS_MENU>
Notre page de test nous permet maintenant d'afficher les rubriques avec leurs sous-rubriques directes non courantes (courante="0") et courantes (courante="1") classées par ordre de classement manuel avec un style différent (class="sousmenu1" ou class="selected1"). Nous nous sommes assuré qu'elles n'étaient pas vides et qu'elles étaient classées par classement manuel grâce à la boucle précédente THELIA_BLOC_SOUS_MENU.
Rien de très compliqué jusque là puisque nous venons de refaire le squelette par défaut, avec simplement des styles différents à définir (ce n'est pas ici le sujet).
Affichons maintenant les sous-sous-rubriques de la sous-rubrique courante. C'est à dire à l'intérieur de la rubrique THELIA_MENU_SOUS_RUBRIQUE_COURANTE.
<!-- sous rubriques courantes --> <THELIA_MENU_SOUS_RUBRIQUE_COURANTE type="RUBRIQUE" id="#ID" courante="1"> <li><a href="#URL" class="selected1">#TITRE</a></li> <!-- sous-sous-rubriques de la rubrique courante --> <THELIA_BLOC_1_SSOUS_RUBRIQUE type="RUBRIQUE" parent="#ID" pasvide="1" classement="manuel"> <THELIA_MENU_1_SSOUS_RUBRIQUE type="RUBRIQUE" id="#ID"> <li><a href="#URL" class="sousmenu2">#TITRE</a></li> </THELIA_MENU_1_SSOUS_RUBRIQUE> </THELIA_BLOC_1_SSOUS_RUBRIQUE> </THELIA_MENU_SOUS_RUBRIQUE_COURANTE>
Vous aurez remarqué que nous avons utilisé la même structure de boucle que pour afficher les sous-rubriques des rubriques à la racine du catalogue. Le nom des boucles change (2 boucles ne doivent pas avoir le même nom). Au lieu de demander parent="0" (racine du catalogue), nous avons mis parent="#ID" (identifiant de la rubrique parent, ici la sous-rubrique courante). Et enfin nous avons enlevé l'argument courante, car toutes les sous-rubriques seront forcément non courantes.
Notre page de test affiche maintenant les rubriques à la racine du site, les sous-rubriques, et si on clique sur une sous-rubrique apparaît alors ses sous-sous-rubriques. Si on clique sur une rubrique à la racine du site, les sous-sous-rubriques disparaissent (effet menu déroulant).
Mais que se passe-t-il si nous cliquons sur une sous-sous-rubrique, la sous-rubrique n'est plus courante et par conséquent les mêmes sous-sous-rubriques disparaissent. Les difficultés commencent ici. Nous voulons en effet que celles-ci restent visibles mais aussi leur attribuer un style différent si l'une de ses sous-sous-rubrique est courante.
Il nous reste donc à traiter le cas d'une sous-sous-rubrique courante.
Page suivante >> Mon premier template 3/3
Rédaction : Ludovic LENNE