1====== CatMenu Plugin ====== 2 3---- plugin ---- 4description: Affiche un menu arborescent de namespace 5author : Valentin LORTET 6email : contact@valentinlortet.fr 7type : Syntax, Action 8lastupdate : 2026-03-14 9compatible : Librarian 10depends : 11conflicts : 12similar : 13tags : Navigation, Menu, Namespace, ProseMirror 14 15downloadurl: https://github.com/Lortet/dokuwiki-plugin-catmenu/zipball/master 16bugtracker : https://github.com/Lortet/dokuwiki-plugin-catmenu/issues 17sourcerepo : https://github.com/Lortet/dokuwiki-plugin-catmenu/ 18donationurl: 19screenshot_img : 20---- 21 22 **Français** | [[plugin:catmenu| English]] | [[de:plugin:catmenu| Deutsch]] | [[es:plugin:catmenu| Español]] 23 24===== Installation ===== 25 26Installer le plugin depuis le [[fr:plugin:extension|Gestionnaire d'extensions]]. 27 28===== Description ===== 29 30Le plugin **catmenu** permet : 31 * d'afficher un menu arborescent (pages + sous-dossiers) pour un namespace ; 32 * d'ouvrir automatiquement la branche correspondant à la page courante ; 33 * de gérer les pages d'accueil de namespace (''$conf['start']'') ; 34 * de proposer un menu contextuel d'actions configurable (selon permissions) ; 35 * d'injecter du DokuCode personnalisé en pied de menu. 36 37===== Syntaxe ===== 38 39Utilisation : 40 * ''{{catmenu>namespace}}'' 41 42Exemples : 43 * ''{{catmenu>.}}'' (namespace courant) 44 * ''{{catmenu>wiki}}'' 45 * ''{{catmenu>docs:projet}}'' 46 47===== Paramètres ===== 48 49^ Nom ^ Description ^ Valeur par défaut ^ 50| skip_file | Regex pour ignorer des IDs de page. Accepte aussi ''@hidepages'' pour réutiliser le paramètre ''hidepages'' de DokuWiki. | '''' | 51| skip_page_without_title | Ignorer les pages sans titre H1. | ''true'' | 52| show_in_editor_menu | Afficher le bouton d'insertion dans l'éditeur. | ''true'' | 53| context_menu_items | Actions disponibles dans le menu contextuel (cases à cocher). | toutes activées | 54| footer_content | DokuCode multiligne injecté à la fin de chaque menu. | '''' | 55 56===== Compatibilité ===== 57 58 * Compatible avec [[https://www.dokuwiki.org/plugin:prosemirror|ProseMirror]] 59 * Utilise [[https://www.dokuwiki.org/plugin:pagesicon|pagesicon]] pour afficher les icônes quand disponible. L'action "Gérer l'icône" dans le menu contextuel n'apparaît que si ''pagesicon'' est installé. 60 * Compatible avec le plugin ''newpagefill'' pour la création de pages. S'il est présent, ''catmenu'' utilise son assistant de création. 61 62===== Menu contextuel ===== 63 64Clic droit sur un item du menu. Chaque action est activable/désactivable individuellement dans la configuration : 65 * **Créer une nouvelle page** (''newpage'') — si autorisé ; 66 * **Recharger le cache** (''reload'') — (''purge=true'') ; 67 * **Gérer les médias** (''medias'') — ouvre le gestionnaire de médias ; 68 * **Gérer l'icône** (''pagesicon'') — uniquement si ''pagesicon'' est installé ; 69 * **Copier l'URL** (''url''). 70 71===== Footer DokuCode ===== 72 73Le paramètre ''footer_content'' accepte du markup DokuWiki multiligne. Il est rendu en HTML et injecté dans un bloc ''<div class="catmenu-footer">'' sous chaque menu. Utile pour ajouter des liens permanents, des notes ou des raccourcis. 74 75===== Permissions ===== 76 77Le rendu respecte les ACL DokuWiki : 78 * lecture minimale pour afficher un item ; 79 * actions contextuelles limitées selon les droits (create/edit/upload). 80