wbMenuAdmin

Dieses Modul ist noch nicht verfügbar!

wbMenuAdmin basiert auf der Grundidee von EasyMenu, das dem einen oder anderen vielleicht noch ein Begriff ist. (Die Entwicklung von EasyMenu wurde Anfang 2010 aus verschiedenen Gründen eingestellt.)

Die meisten Templates erzeugen Menüs mit Hilfe des Moduls show_menu2. Dieses bietet umfangreiche Möglichkeiten, wird dabei aber über zahlreiche Aufrufparameter gesteuert, die richtig kombiniert werden müssen, damit man das gewünschte Ergebnis erzielt.

wbMenuAdmin wählt hier einen anderen Ansatz: In den Grundeinstellungen wählt der Administrator lediglich einen Menütyp - etwa "Sitemap" - und eines der mitgelieferten Layouts. Das Ergebnis sieht er sofort in einer Vorschau. Anschließend platziert er maximal zwei Aufrufe in seinem Template, und fertig. Ändert er später die Einstellungen des Menüs, wirkt sich dies gleich nach dem Speichern auf die Darstellung aus, ohne daß er nochmals das Template ändern muß.

Die Menü-Übersicht zeigt unter anderem auch, in welchen Templates das Menü verwendet wirdDie Kontext-Hilfe zeigt an, wie das Menü eingebunden werden muß; der Aufruf kann einfach per Copy&Paste in das Template übertragen werdenDie Menü-Vorschau zeigt, wie das Menü aussehen wirdDer Einstellungen-Dialog (hier erweitert); auch hier wird eine Vorschau angezeigt, die sich bei Änderung von Einstellungen automatisch aktualisiert

1.  Voraussetzungen

Dieses Modul setzt folgende Module voraus:

2.  Menü einbinden

Es gibt zwei Möglichkeiten, ein konfiguriertes Menü in das Template einzubinden.

2.1  Per Funktionsaufruf (analog show_menu2())

Hierzu wird an der Stelle im Template, an der das Menü erscheinen soll, folgender Funktionsaufruf platziert:

<?php wbmenu(<ID>); ?>

<ID> entspricht hierbei entweder dem Namen des Menüs, oder der eindeutigen Menü-Nummer. Beide Informationen sind in der Menü-Übersicht zu sehen.

Der Clou: Wenn man nun nichts weiter tut, bindet wbMenuAdmin automatisch ein Droplet ein, welches wiederum mit Hilfe des (vorausgesetzten) Moduls jQueryAdmin dafür sorgt, daß alle zum Menü gehörenden Daten - etwa die notwendigen CSS-Dateien - in den Seitenkopf importiert werden!

Alternativ kann auch im Seitenkopf (also zwischen <head> und </head>) folgender Aufruf eingefügt werden:

<?php wbheader([<ID>]); ?>

Die Angabe einer Menü-ID ist hierbei optional. Ist keine ID angegeben, sucht wbMenuAdmin automatisch im Template nach eingebundenen Menüs, und lädt alles nach, was diese Menüs benötigen. Bei einem sehr umfangreichen Template kann das auf einem vielbeschäftigten Server leichte Performance-Einbußen zur Folge haben, daher kann man auch hier die ID mit angeben und somit das Durchsuchen des Templates einsparen.

Das bedeutet: Wer es sich einfach machen will, ersetzt einfach nur den Aufruf von show_menu2() durch den von wbmenu() und muß sich sonst um nichts kümmern! (Außer natürlich das Menü zu konfigurieren!)

2.2  Per Droplet

Jedes von wbMenuAdmin erzeugte Menü läßt sich auch als Droplet einbinden. Das hat den Vorteil, daß man spezielle Menüs auch einfach im Backend zusammenstellen und in einer WYSIWYG-Sektion auf einer Seite aufrufen kann. So läßt sich zum Beispiel blitzschnell ein Sitemap (kompletter Seitenindex) einbinden.

Natürlich kann man auch "das" Menü als Droplet einbinden, indem man im Template an der entsprechenden Stelle folgendes Droplet platziert:

    [[wbMenu?id=<ID>]]

Auch hier entspricht <ID> natürlich wieder Namen oder Nummer des gewünschten Menüs.

Analog dazu läßt sich auch der Header einbinden:

    [[wbMenuHeader?id=<ID>]]

Auch hier gilt das Gleiche wie oben schon gesagt: Fehlt der Header-Aufruf, wird dieser automatisch per jQueryAdmin-Droplet nachgeholt.

3.  Menütypen

Derzeit sind folgende Menütypen geplant:

  • Sitemap
    Zeigt einen kompletten ("aufgeklappten") Seitenbaum
  • Expanding
    Klappt auf jeder Seite die dazu passenden Menüelemente auf (wie auf diesen Seiten das Menü links)
  • Breadcrumb
    Zeigt den Pfad bis zur aktuellen Seite an
  • Siblings
    Zeigt zu jeder Seite diejenigen anderen Seiten an, die auf der gleichen Ebene liegen
  • Children
    Zeigt diejenigen Seiten an, die direkte Nachfolger ("Kinder") der aktuellen Seite sind

4.  Erweiterte Einstellungen

4.1  Startseite

Nicht immer möchte man sein Menü auf der obersten Ebene beginnen; daher kann bei allen Menütypen eine Startseite angegeben werden, auf der das Menü beginnen soll. Standard ist die Root-Seite.

Das kann zum Beispiel genutzt werden, um Kontextmenüs zu erzeugen - also Menüs, die nur für einen bestimmten Teilbaum von Seiten gelten sollen -, oder um einen umfangreicheren Seitenbereich mit einer Sitemap-Seite zu starten.

4.2  Anzahl der Ebenen

Genauso, wie man nicht immer auf der obersten Ebene beginnen möchte, will man vielleicht nicht alle Ebenen des Seitenbaums anzeigen. Daher kann die gewünschte Anzahl an Ebenen angegeben werden. Standard ist "alle Ebenen".

4.3  Access Keypad anzeigen

Das Access Keypad ist vor allem eine Hilfe für Sehbehinderte, die so über Tastatur-Kürzel direkt einen Menüpunkt anwählen können. Ist diese Option gewählt, wird das Access Keypad automatisch generiert und angezeigt.

4.4  Weitere

Weitere Einstellmöglichkeiten sind in Planung, aber noch nicht umgesetzt. Daher gibt es hierzu auch noch keine Details.