Menus
» Retour à la liste des modules
Introduction
Le module menus de Zwe vous permet de gérer les différents menus qui sont affichés sur votre site. Pour l'instant, la gestion des menus est assez contre-intuitive et n'est pas évidente à prendre en main. Heureusement, ceci devrait bientôt changer (horizon v3.0) et cette page devrait vous aider à vous en sortir avec les menus. Sa lecture est vivement recommandée car la syntaxe qui est décrite ici ne s'invente pas toute seule :)
La gestion des menus est découpée en "groupes de menus", chaque groupe pouvant contenir plusieurs menus dont le contenu est décrit selon une certaine syntaxe.
Les groupes de menus sont une dummy-entity HTML qui vous permet d'encapsuler plusieurs menus dans le même <div class="menu"> afin d'y appliquer un style ou un positionnement particulier. Chaque groupe de menu est caractérisé par une clé de groupe et un contenu dont la syntaxe est décrite ci-dessous. La clé du groupe est utilisé comme identifiant Css. Par exemple, le groupe topmenu sera représenté par un <div class="menu" id="topmenu">.
Syntaxe
Les groupes de menu utilisent une syntaxe précise reconnue par un mini-parseur chargé de la convertir en code HTML. Cette syntaxe vous permet de créer plusieurs menus par groupe, avec des entrées normales, réservées au groupe d'administration, ...
[id[Titre[ - destination titre qui peut etre en plusieurs mots * destination entrée réservée aux administrateurs @mygroup destination entrée réservée aux membres du groupe 'mygroup' ]]] [[auth]] [[actions]]
L'élément Titre est optionnel. Si il est donné, une entrée <li class="title"> sera créée en premier dans le menu. A vous de l'utiliser à bon escient en Css ;-) Les deux entrées spéciales [[auth]] et [[actions]] appellent respectivement la barre d'authentification et la barre d'action du module (passée en paramètre à la fonction de menus depuis le module).
Toute ligne non reconnue par le système de menus ne sera pas ignorée mais considérée comme des informations brutes que vous souhaitez afficher. Chaque ligne de cette sorte produira le code HTML suivant :
<span class="raw">Blabla</span>
Exemple
La syntaxe suivante pour le groupe topmenu :
[top[[ - blog home * admin panel d'admin - http://zwe.bulix.org zwe ]]] Un jour sur terre... [left[Articles[ - pages/article1/show article 1 - pages/article2/show article 2 * pages/admin ajouter une page ]]]
produira le code HTML suivant (sans les commentaires bien sûr, c'est juste pour montrer ce qui serait affiché si vous étiez loggé en tant qu'administrateur) :
<div class="menu" id="topmenu"> <ul class="menu" id="top"> <li><a href="index.php/blog">home</a></li> <!-- uniquement pour les admins : <li><a href="index.php/admin">panel d'administration</a></li> --> <li><a href="http://zwe.bulix.org">zwe</a></li> </ul> <span class="raw">Un jour sur terre...</span> <ul class="menu" id="left"> <li class="title">Articles</li> <li><a href="index.php/pages/article1/show">article 1</a></li> <li><a href="index.php/pages/article1/show">article 1</a></li> <!-- uniquement pour les admins : <li><a href="index.php/pages/admin">ajouter une page</a></li> --> </ul> </div>
