Benutzer-Werkzeuge

Webseiten-Werkzeuge


cookbook:menus

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
cookbook:menus [2014/07/29 19:44]
shadowcat [cat_siblingsmenu]
cookbook:menus [2016/03/14 00:00]
Zeile 1: Zeile 1:
-<WRAP center round info 100%> 
-[[https://​github.com/​webbird/​BlackCatCMS/​wiki/​Creating-menus|English version of this page is available at GitHub.]] 
-</​WRAP>​ 
  
-BlackCat CMS beinhaltet nach wie vor das Modul ''​show_menu2'',​ welches genauso funktioniert,​ wie unter Website Baker. Für Dwoo Templates existiert ein entsprechendes Plugin: 
- 
-    {show_menu( ...SM2 options... )} 
- 
-Die Reihenfolge und Syntax der Optionen ist exakt dieselbe wie gewohnt. 
- 
-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:​ 
- 
-    cat_breadcrumb( __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>​ ] ] ] ) 
- 
-Die Optionen sind immer dieselben, **alle** Optionen sind - ähm - optional. Diese sind: 
- 
-**PAGE_ID** 
- 
-Die ID der Seite, mit der die Menüerzeugung startet. Standardmäßig wird mit der ID der aktuellen Seite begonnen. 
- 
-**DEPTH** 
- 
-Erlaubt es, die maximale Tiefe des Menüs einzuschränken. Der Effekt hängt vom jeweiligen Menütyp ab. 
- 
-**CURRENT** 
- 
-Bestimmt, ob die aktuelle Seite im Menü auftaucht oder nicht. Die Standardeinstellung hierfür hängt vom Menütyp ab. 
- 
-**OPTIONS** 
- 
-Weitere Optionen, etwa bezüglich der zu verwendenden CSS-Klassen. 
- 
-====== Beispiele ====== 
- 
-===== Ausgangspunkt:​ Seitenhierarchie ===== 
- 
-Dies ist ein beispielhafter Seitenbaum, anhand dessen das Ergebnis der verschiedenen Aufrufe verdeutlicht werden soll. 
- 
-  + Page1 
-  + Page2 
-    + Page2Child1 
-      + Page2Child1Child1 
-      + Page2Child1Child2 
-        + Page2Child1Child2Child1 
-  + Page3 
- 
-Die aktuelle Seite - also die, die gerade angezeigt wird - ist in allen Fällen ''​Page2Child1Child2Child1''​ 
- 
-==== cat_submenu ==== 
- 
-Template Markup: ​ 
- 
-    {cat_submenu(x)} 
- 
-Sichtbare Seiten: 
- 
-  + Page2 
-    + Page2Child1 
-      + Page2Child1Child1 
-      + Page2Child1Child2 
-        + 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. 
- 
-Durch die Angabe von **0** als Seiten-ID wird das Menü ausgehend von der Wurzel erzeugt. (Entspricht SM2_ROOT.) In diesem Fall würden alle vorhandenen Seiten angezeigt, also auch ''​Page1''​ und ''​Page3''​. 
-==== cat_siblingsmenu ==== 
- 
-Template Markup: ​ 
- 
-    {cat_siblingsmenu()} 
- 
-Sichtbare Seiten: 
- 
-//keine// 
- 
-(Es gibt keine weiteren Seiten auf der gleichen Ebene wie Page2Child1Child2Child.) 
- 
-Würde man beispielsweise nur die Seiten der obersten Ebene sehen wollen, wäre die Angabe: 
- 
-    {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. 
- 
-Ergebnis: 
- 
-  + Page1 
-  + Page2 
-  + Page3 
-==== cat_breadcrumb ==== 
- 
-Template Markup: ​ 
- 
-    {cat_breadcrumb()} 
- 
-Sichtbare Seiten: 
- 
-  + Page2 
-    + Page2Child1 
-      + Page2Child1Child2 
-        + Page2Child1Child2Child1 
- 
-Angezeigt wird der "​Pfad"​ von der obersten Ebene bis zur aktuellen Seite. Standardmäßig wird die aktuelle Seite selbst ebenfalls angezeigt, was bei einem Breadcrumb auch sinnvoll ist. Dies läßt sich durch Angabe der Option ''​CURRENT''​ unterbinden:​ 
- 
-    {cat_breadcrumb(NULL,​999,​false)} 
- 
-Da hierbei eigentlich nur der dritte Parameter angegeben werden soll, man die anderen aber nicht einfach weglassen kann, wird der erste - ''​PAGE_ID''​ - auf ''​NULL''​ gesetzt - das entspricht wiederum der Angabe ''​SM2_ROOT''​ bei ShowMenu2, also der obersten Seite. Der zweite - ''​DEPTH''​ - könnte auch auf einen niedrigeren Wert gesetzt werden, die Angabe 999 entspricht der Standardeinstellung. 
- 
-Ergebnis: 
- 
-  + Page2 
-    + Page2Child1 
-      + Page2Child1Child2 
cookbook/menus.txt · Zuletzt geändert: 2016/03/14 00:00 (Externe Bearbeitung)