Un petit plugin "Menus" encore en développement mais assez grand maintenant pour être utilisé cherche des testeurs têtu sachant tester.
Histoire de ne pas mettre de doc publique sur un truc bugué ou manquant de trop de fonctionnalités.
Voilà le topo :
Actuellement, seuls ceux qui savent faire des squelettes peuvent créer et modifier les menus d'un site. Et encore, même quand on sait, c'est chiant quand on doit ajouter des pages précises et pas uniquement une arbo de rubriques. Par exemple lorsqu'on veut ajouter un lien vers un article précis, ou vers une "page=truc" ou autre...
Et quand on veut juste changer l'ordre, il faut aussi modifier le squelette. Bref, pas très pratique pour les utilisateurs s'ils ne font qu'utiliser l'interface privée.
Donc le plugin Menus.
Une interface dans l'espace privé pour créer des menus.
Un menu = une liste d'entrées.
On peut créer des sous-menus en-dessous de la plupart des entrées.
Une entrée peut elle-même déjà créer des sous-menus : par exemple les rubriques et sous-rubriques sur plusieurs niveaux.
Mais une entrée c'est quoi ? C'est tout ce qu'on veut !
Afin d'être extensible, tous les types d'entrées sont définis par un squelette + un fichier XML de config, dans le dossier "menus/".
Ainsi, on va pouvoir créer autant de choses différentes que d'utilisation. Évidemment, si vous pensez à une entrée générique, il faut l'ajouter directement dans ce plugin.
Pour l'instant trois types d'entrée sont fournis :
- Créer un lien arbitraire vers ce qu'on veut
- Créer un lien vers un objet de SPIP (n'importe quel objet !)
- Créer une liste des rubriques et sous-rubriques avec niveau configurable (infini ou 1, 2, 3, 4, etc) et rubrique de départ configurable.
D'après moi, la chose la plus importante qui manque pour l'instant, c'est qu'un squelette qui utilise des menus puisse dire "Il me faut absolument un menu <barre_navigation> !!". Ce qui aboutirait à prévenir les admins dans l'espace privé qu'il faut vite créer ce menu s'il n'existe pas déjà.
Merci d'avance pour ceux qui s'amuseront avec.
--
RastaPopoulos