Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
cookbook:menus [2014/07/29 19:46] shadowcat |
cookbook:menus [2016/03/14 00:00] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | <WRAP center round info 100%> | + | ====== Menüs ====== |
+ | |||
+ | <WRAP center round info 50%> | ||
[[https://github.com/webbird/BlackCatCMS/wiki/Creating-menus|English version of this page is available at GitHub.]] | [[https://github.com/webbird/BlackCatCMS/wiki/Creating-menus|English version of this page is available at GitHub.]] | ||
</WRAP> | </WRAP> | ||
Zeile 8: | Zeile 10: | ||
Die Reihenfolge und Syntax der Optionen ist exakt dieselbe wie gewohnt. | Die Reihenfolge und Syntax der Optionen ist exakt dieselbe wie gewohnt. | ||
+ | |||
+ | <WRAP center round important 100%> | ||
+ | Die folgenden Angaben gelten für CMS Version 1.1. Für Version 1.2 bitte ans Seitenende scrollen. | ||
+ | </WRAP> | ||
+ | |||
Zusätzlich haben wir einen "Menü-Helper" kreiert, der einige der üblichsten Menü-Varianten direkt unterstützt. Auch hierfür existieren Dwoo-Plugins und mit diesen die entsprechenden Template-Platzhalter: | Zusätzlich haben wir einen "Menü-Helper" kreiert, der einige der üblichsten Menü-Varianten direkt unterstützt. Auch hierfür existieren Dwoo-Plugins und mit diesen die entsprechenden Template-Platzhalter: | ||
Zeile 14: | Zeile 21: | ||
cat_submenu ( __Int__ <PAGE_ID>[, __Int__ <DEPTH>[, __Bool__ <CURRENT>[, __Array__ <OPTIONS> ] ] ] ) | cat_submenu ( __Int__ <PAGE_ID>[, __Int__ <DEPTH>[, __Bool__ <CURRENT>[, __Array__ <OPTIONS> ] ] ] ) | ||
cat_siblingsmenu( __Int__ <PAGE_ID>[, __Int__ <DEPTH>[, __Bool__ <CURRENT>[, __Array__ <OPTIONS> ] ] ] ) | cat_siblingsmenu( __Int__ <PAGE_ID>[, __Int__ <DEPTH>[, __Bool__ <CURRENT>[, __Array__ <OPTIONS> ] ] ] ) | ||
+ | |||
+ | Erst ab BlackCat CMS Version 1.1 final: | ||
+ | |||
+ | cat_fullmenu ( [ __Array__ <OPTIONS> ] ) | ||
(Der besseren Lesbarkeit halber wurden die Klammern passend eingerückt.) | (Der besseren Lesbarkeit halber wurden die Klammern passend eingerückt.) | ||
Zeile 66: | Zeile 77: | ||
+ Page2Child1Child2 | + Page2Child1Child2 | ||
+ Page2Child1Child2Child1 | + Page2Child1Child2Child1 | ||
- | | + | |
'x' entspricht im diesem Beispiel der ID der Seite ''Page2''. Aus diesem Grund werden die beiden anderen Seiten auf dem obersten Level - ''Page1'' und ''Page3'' - nicht im Menü aufgeführt. | 'x' entspricht im diesem Beispiel der ID der Seite ''Page2''. Aus diesem Grund werden die beiden anderen Seiten auf dem obersten Level - ''Page1'' und ''Page3'' - nicht im Menü aufgeführt. | ||
Zeile 85: | Zeile 96: | ||
{cat_siblingsmenu(NULL)} | {cat_siblingsmenu(NULL)} | ||
- | | + | |
Durch den Wert ''NULL'' als Seiten-ID (es geht auch '0') wird die Wurzel als Ausgangspunkt verwendet. Alternativ könnte man auch die ID einer der drei Seiten ''Page1'', ''Page2'' oder ''Page3'' angeben. | Durch den Wert ''NULL'' als Seiten-ID (es geht auch '0') wird die Wurzel als Ausgangspunkt verwendet. Alternativ könnte man auch die ID einer der drei Seiten ''Page1'', ''Page2'' oder ''Page3'' angeben. | ||
Zeile 117: | Zeile 128: | ||
+ Page2Child1 | + Page2Child1 | ||
+ Page2Child1Child2 | + Page2Child1Child2 | ||
+ | |||
+ | ==== Der letzte Parameter (OPTIONS) ==== | ||
+ | |||
+ | Mit Hilfe des letzten Parameters lassen sich einige Einstellungen bezüglich der CSS-Klassen vornehmen. Die gewünschten Optionen werden einfach kommasepariert angegeben. Hier ein Beispiel: | ||
+ | |||
+ | {cat_siblingsmenu(1, NULL, false, current: current_page_item, first: first_item)} | ||
+ | |||
+ | Derzeit werden folgende Einstellungen angeboten: | ||
+ | |||
+ | * list-class\\ Die CSS-Klasse für die Liste als solche, also <ul> | ||
+ | * first\\ Die CSS-Klasse für das jeweils erste Element der Liste, also das erste <li> | ||
+ | * last\\ Die CSS-Klasse für das jeweils letzte Element der Liste, also das letzte <li> vor dem </ul> | ||
+ | * child\\ Die CSS-Klasse für Elemente, die Unterelemente haben, also das <li>, welches ein <ul> und damit eine untergeordnete Liste beinhaltet | ||
+ | * current\\ Die CSS-Klasse für die aktuelle Seite | ||
+ | |||
+ | Ab BlackCat CMS Version 1.1 final: | ||
+ | |||
+ | * closed\\ CSS-Klasse für ein Element, das Unterelemente hat, die jedoch verborgen sind | ||
+ | * open\\ CSS-Klasse für ein offenes (aufgeklapptes) Element | ||
+ | * prefix\\ Ein einheitliches Präfix für die CSS-Klassen; Standard: leer | ||
+ | * ul-class\\ CSS-Klasse für <ul> | ||
+ | * ul-id\\ Eine ID für die Liste, also das allererste <ul>; Alias: ''list-id'' | ||
+ | | ||
+ | Um **mehrere CSS-Klassen** anzugeben, werden diese in **Anführungszeichen** gesetzt: | ||
+ | |||
+ | {cat_siblingsmenu(1, NULL, false, list-class: "top right nav-list")} | ||
+ | |||
+ | Wichtig ist auch das Leerzeichen nach dem Doppelpunkt! | ||
+ | |||
+ | ====== ab CMS Version 1.2 ====== | ||
+ | |||
+ | ===== Änderungen ===== | ||
+ | |||
+ | Ab CMS Version 1.2 entfallen die Parameter <DEPTH> und <CURRENT> bzw. werden in die allgemeinen Optionen verschoben. Der Aufruf für alle Menüs ist jetzt | ||
+ | |||
+ | cat_xxxmenu(<MenuID>[, <Optionen>]) | ||
+ | |||
+ | ...wobei xxx z.B. für "full" steht. | ||
+ | |||
+ | Der Parameter <DEPTH> wird ersetzt durch **''maxlevel''**. | ||
+ | Der Parameter <CURRENT> wird ersatzlos gestrichen. | ||
+ | |||
+ | |||
+ | === Startlevel angeben === | ||
+ | |||
+ | Der Startlevel bestimmt den Einstiegspunkt eines Menüs. Der Standard-Startlevel ist 0, das heißt es werden alle Seiten berücksichtigt. | ||
+ | |||
+ | Manchmal ist es notwendig, einen anderen Startlevel anzugeben, etwa wenn sich auf Level 0 die Einstiegsseiten für die verschiedenen Sprachen befinden. In diesem Fall kann man mit Hilfe des Parameters ''startlevel'' einen abweichenden Einstiegslevel angeben. | ||
+ | |||
+ | Beispiel: | ||
+ | |||
+ | {cat_siblingsmenu(1, NULL, false, list-class: "top right nav-list", startlevel: 1)} | ||
+ | |||
+ | |||
+ |