Smarty Plugin um eine komplette Navigation mit dem {nav}-Block zu erstellen.
Parameter-Name | Typ | Erforderlich | Beschreibung |
var | String | Nein |
Ausgabe in eine Smarty Variable zwischenspeichern (Standard: direkte Ausgabe) |
root | Page | Nein |
Startseite (Standard: Startseite des aktuellen Mandanten) |
only_path | Boolean | Nein |
Nur Items anzeigen die im aktuellen Pfad sind (Standard: false) |
depth | Integer | Nein |
Maximale Tiefe (Standard: unendlich) |
Der {nav}-Block wird im {navtree} Plugin rekursiv verwendet und erzeugt eine komplette Seitenstruktur/Navigation mit festgelegtem HTML.
Beispiel:
{navtree}
erzeugt
<ul>
<li>
<a href="URL">Seite A</a>
<ul>
<li>
<a href="URL">Seite B</a>
</li>
</ul>
</li>
</ul>
Befindet man sich auf "Seite B", dann wird die CSS Klasse current
vergeben. Alle Seiten die sich im Pfad zu "Seite B" befinden, erhalten die Klasse active
.
Dies geschieht mithilfe von JavaScript. Dadurch kann die Navigation sinnvoll im Cache gespeichert werden.
Eigene Templates
Das Plugin verwendet zwei Templates:
- lib/smarty/plugins/navtree/body.tpl
- lib/smarty/plugins/navtree/children.tpl
Diese können Sie bei Bedarf ersetzen (eines oder beide). Dabei müssen Sie in einem Ihrer site Verzeichnisse folgende Struktur anlegen:
- plugins/smarty/navtree/body.tpl
- plugins/smarty/navtree/children.tpl
Ihr site Verzeichnis kann dabei site/_global/, site/<Mandant>/ oder pub/theme/<Design>/site sein.