Include
Diese Seite ist für Designer, die Templates in wiederverwendbare Teile aufteilen: einen Kopfbereich, einen Teaser, eine Leiste zum Teilen.
Inhalt
- Syntax
- Parameter übergeben
- Was das eingebundene Template sieht
- Dynamische Pfade
- Include oder node_view_gui?
Syntax
include uri='design:pagelayout/header.tpl'design: bedeutet „diesen Pfad unter templates/ über die Design-Kaskade finden“, sodass ein Design weiter oben in der
Kette den Teil ersetzen kann, indem es eine Datei an denselben Pfad legt (Die Design-Kaskade).
Parameter übergeben
Jedes weitere name=value wird zu einer Variablen im eingebundenen Template:
include uri='design:parts/teaser.tpl' node=$child show_image=true() image_class='small'Geben Sie optionalen Parametern im Teil einen Standardwert:
{* design/mytheme/templates/parts/teaser.tpl *}
default show_image=false() image_class='medium'
<article class="teaser">
if and( $show_image, $node.data_map.image.has_content )
attribute_view_gui attribute=$node.data_map.image image_class=$image_class
/if
<h3><a href=$node.url_alias|ezurl>$node.name|wash</a></h3>
</article>Was das eingebundene Template sieht
Der Teil sieht die Variablen seines Einbindenden plus die Parameter. Variablen, die er mit {def} definiert, bleiben bis
{undef} im gemeinsamen Namensraum; deshalb sollten Teile mit {undef} entfernen, was sie definieren, und Namen mit Präfix
verwenden (Variablen und def).
Dynamische Pfade
Der Pfad lässt sich zusammensetzen:
include uri=concat( 'design:parts/icon_', $type, '.tpl' )Die Layout-Engine bindet Block-Templates auf diese Weise ein (concat( 'design:explayouts/block/', $block.definition_identifier, '.tpl' )).
Ein Pfad, der nicht existiert, ist ein Template-Fehler: Stellen Sie sicher, dass jeder mögliche Wert eine Datei hat.
Include oder node_view_gui?
| Verwenden | Wann |
|---|---|
{include} | ein Teil des Rahmens oder Markup, das nicht von der Inhaltsklasse abhängt |
{node_view_gui content_node=$child view='line'} | einen Knoten zeichnen: Das Template des Ansichtsmodus wird über Overrides pro Klasse gewählt (node_view_gui) |
Verwandte Seiten
- Variablen und def
- Das Pagelayout
- Freie Dokumentation: Diese Seite darf unter der GNU FDL 1.3 frei kopiert, übersetzt und verbessert werden.
Werden Sie Exponential-Partner
Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.