AcMenu Plugin
AcMenu rendert ein Akkordeon-Menü über Namensräume und Seiten — ACL-bewusst, mit Nachladen tieferer Ebenen, steuerbarer Reihenfolge und Seitensammlungen. Gedacht ist das Paket für Autoren, die eine Seitenleiste für einen Namensraum einrichten und deren Reihenfolge pflegen, und für Leser, die sich darüber durch geschützte wie öffentliche Bereiche bewegen, ohne gesperrte Einträge zu sehen.
Erste Schritte
Schnelleinstieg: Ein Menü in die Seitenleiste stellen — der kürzeste Weg zum ersten Ergebnis, in zwei Schritten.
Häufige Aufgaben
| Was Sie wollen | Für wen | Wo Sie das tun | Anleitung |
|---|---|---|---|
| ein Namensraum-Menü einrichten | Autor | Sidebar-Seite des Namensraums | Tutorial: Ein Namespace-Menü einrichten |
| die Menü-Reihenfolge festlegen | Autor | <ns>:order-Seite, als Superuser auch per Ziehen und Ablegen | How-to: Menü-Reihenfolge festlegen |
| einen Namensraum als Seitensammlung führen | Autor | Startseite des Namensraums, Marke ~~COLLECTION~~ | How-to: Seitensammlung |
| einen Menü-Titel ohne sichtbare Überschrift setzen | Autor | Seite, Marke {{wk:title>…}} | How-to: Menü-Titel setzen |
| die Marken und ihre Parameter nachschlagen | Autor | – | Syntax- und API-Referenz |
| die Ursache eines Fehlers finden | alle | – | Fehlerdiagnose |
Ablauf im Überblick
Das Menü entsteht beim Rendern der Seitenleiste aus dem Seitenbestand des Basis-Namensraums: je Eintrag wird das Leserecht geprüft, dann wird sortiert — Namensräume vor Seiten, alphabetisch; existiert eine Order-Seite, führt deren Reihenfolge. In den fokussierten Modi wird die Basis aus Sammlungen herausverlagert, denn eine Sammlung ist ein Dokument, kein Ordner. Jenseits der Vorladetiefe lädt der Client Teilbäume nach; der aktuelle Pfad wird immer server-seitig vorgeladen.
Welche Komponente welchen Schritt übernimmt, steht in der Syntax-Referenz, Abschnitt „Renderpfad".
Wichtigste Funktionen
- Wiki-Syntax
{{wk:acmenu>...}}mit Modi für festen Namensraum, fokussierte Ansicht und Smart-Auto-Erkennung - ACL-bewusste Navigation: Partial Namespaces (Pfade zu öffentlichen Inhalten in geschützten Bereichen), ACL-basiertes „Nach oben„
- Nachladen tieferer Ebenen; geöffnete Knoten werden über einen Keks server-seitig wiederhergestellt
- Menü-Reihenfolge je Namensraum über eine Order-Seite — pflegbar per Hand oder per Ziehen und Ablegen (Superuser)
- Seitensammlungen: ein markierter Namensraum verhält sich wie ein einzelnes Dokument mit Unterseiten
- Unsichtbare Menü-Titel je Seite, auch mehrsprachig über das Paket wki18n
- FontAwesome-Ikonen wahlweise je Menü
Kernbegriffe
Ein Basis-Namensraum ist der Ausschnitt des Seitenbestands, den ein Menü zeigt; der Modus der Marke entscheidet, ob er fest steht, der aktuellen Seite folgt oder automatisch bestimmt wird. Eine Sammlung ist ein Namensraum, der sich wie ein einzelnes Dokument mit Unterseiten verhält und deshalb nie zur Menü-Basis wird.
Die Marken — Sammlungs-Tag und unsichtbarer Titel — liegen in den aktuellen Metadaten der jeweiligen Seite und verschwinden von selbst, sobald die Marke entfernt wird. Die Darstellung selbst kommt aus der geteilten Baum-Komponente von wkfluentui; dieses Paket beschafft die Daten.
Verwaltung
Dieses Paket hat keinen eigenen Verwaltungsbildschirm — es wird über Marken im Seitentext und über Order-Seiten gesteuert.
- Einstellungen — Vorladetiefe und die übrigen Werte im Konfigurationsmanager
- Menü-Reihenfolge festlegen — Order-Seiten schreiben, von Hand oder per Ziehen und Ablegen
Diagnose
Für Entwickler
- Syntax- und API-Referenz — Marken, Order-Seite, AJAX-Endpunkte, PHP-API, CSS-Klassen, Renderpfad
- Versionsgeschichte — was sich wann geändert hat und warum
- wkfluentui — die Baum-Komponente, die die Ausgabe zeichnet
- Styles-Contract — der Token-Vertrag, an dem die Darstellung hängt
Das Paket ist ein stark erweiterter Fork von AcMenu (Torpedo), liegt unter lib/plugins/wkacmenu/ und steht unter GPL 2.
Verwandte Themen
- Ein Namespace-Menü einrichten — ein Namespace-Menü einrichten
- How to: Menü-Reihenfolge festlegen — Menü-Reihenfolge festlegen
- How to: Einen Namespace als Seitensammlung führen — einen Namensraum als Seitensammlung führen
- How to: Menü-Titel ohne sichtbare Überschrift setzen — Menü-Titel ohne sichtbare Überschrift setzen
- Syntax- und API-Referenz — Syntax- und API-Referenz
- Fehlerdiagnose — Fehlerdiagnose
- Versionsgeschichte — Versionsgeschichte
<wk:audit stack=„doku“ title=„wkacmenu Plugin“>
<wk:include ref="code:qualitaet" critical="true">[x][x][x][x]</wk:include> <wk:include ref="stacks:dokuwiki-php">[x][x][x][x][x]</wk:include> <wk:include ref="sicherheit:kritis" critical="true">[x][x][x][-][-]</wk:include>
</wk:audit>
DISCUSSION