Makros in PureWiki bieten einen Mechanismus zum Einbetten dynamischer, programmatischer Funktionen direkt in Themes. Sie ermöglichen es Theme-Entwicklern, komplexe UI-Komponenten einzubinden, ohne rohe PHP-Logik in ihre Template-Dateien schreiben zu müssen.
Syntax
Makros werden mit {{ macro:name }} oder mit einem optionalen Parameter aufgerufen: {{ macro:name | parameter }}.
{{ macro:breadcrumbs }}
{{ macro:search | placeholder="Suche..." }}
Verfügbare Core-Makros
breadcrumbs
{{ macro:breadcrumbs }}
Erzeugt eine Breadcrumb-Navigation (Brotkrümelpfad) basierend auf der Position der aktuellen Seite in der pagetree.json Hierarchie.
prevnext
{{ macro:prevnext }}
Erzeugt Links zur vorherigen und nächsten Seite innerhalb der aktuellen Verzeichnisebene oder der logischen Lesereihenfolge.
search
{{ macro:search }}
Bettet das Eingabefeld für die Volltextsuche und den erforderlichen UI-Container für die Suchergebnisse ein. Die Interaktivität wird über assets/js/search.js gesteuert.
sidebar_toggle
{{ macro:sidebar_toggle }}
Gibt eine Schaltfläche aus, um die Sichtbarkeit der primären Seitenleiste auf kleineren Bildschirmen umzuschalten.
lang_switcher
{{ macro:lang_switcher | style }}
z. B. {{ macro:lang_switcher | dropdown }}
Rendert ein Navigationselement, das alle verfügbaren Sprachversionen für die aktuelle Seite auflistet. Es werden nur Sprachen angezeigt, für die eine veröffentlichte Übersetzung existiert. Wenn nur eine Sprache verfügbar ist, wird der Switcher automatisch ausgeblendet. Erfordert die Aktivierung von i18n in den globalen Einstellungen.
Stil: list (Standard)
Der Switcher rendert ein nav class="pw-lang-switcher" Element, das pro verfügbare Sprache ein a enthält. Der Link der aktiven Sprache erhält die Klasse active. Das Styling wird dem Theme überlassen.
Stil: dropdown
Der Switcher rendert ein select Element, das pro verfügbare Sprache eine option enthält.
comments
{{ macro:comments }}
Rendert die Kommentarliste und das Absendeformular auf der Seite, falls Kommentare global und für die jeweilige Seite aktiviert sind. Es zeigt zudem die genehmigten Kommentare an.