Twig-Templates können in Contao ab Version Contao 4.12 parallel zu html5-Templates genutzt werden. Es ist möglich html5-Templates in Twig zu erweitern und zu überschreiben.
Einführung in Twig-Templates aus Sicht eines Contao Frontendentwicklers.
Über mich seit 2010 Frontendentwicklung (Freelancer) Quereinsteiger im Bereich Web größte Stärken im Bereich CSS ausschließlich Betreuung von Contao und HTML-Seiten Mitglied der Contao Association Contao Partner Forum: mlweb Contao Camp 2022 2 30.04/01.05.2022
Twig – Standard Template Engine von Symfony Twig ist eine Template-Engine für die Programmiersprache PHP wird seit Symfony 2 als Standard Template-Engine eingesetzt Contao verwendet Twig 3.x wird von vielen IDE und Editoren unterstützt • Eclipse (IDE) • PhpStorm (IDE) • Visual Studio(IDE) • Atom • Notepad++ • Sublime Text • TextMate • Coda 30.04/01.05.2022 Contao Camp 2022 5
If-Abfragen {% set test = "mein Inhalt" %} {% if test %} Ausgabe: Die Variable hat folgenden Inhalt: {{ test }} {% else %} Ausgabe: Die Variable hat keinen Inhalt. {% endif %} 30.04/01.05.2022 Contao Camp 2022 12
Twig in Contao jetzt nutzen! verfügbar ab Contao 4.12 html5-Templates können durch Twig-Templates überschrieben werden parallele Nutzung von html5- und Twig-Templates neue Möglichkeiten austesten Probleme in Euren angepassten Templates erkennen und in Ruhe nach Lösungen suchen Vorbereitung auf die Zukunft ohne Zeitdruck mit den neuen/anderen Möglichkeiten vertraut machen Syntax recht einfach – Templates werden besser lesbar „Mitarbeiten“ an der Implementierung von Twig Contao Camp 2022 17 30.04/01.05.2022
Wie bin ich vorgegangen? Contao bringt (im Moment) nur die HTML5-Templates mit Original-Templates mit Twig nachgebaut Anpassungen aus vorhandenen HTML5-Templates ausprobiert langsam an die neuen Möglichkeiten von Twig herangetastet Github 30.04/01.05.2022 Contao Camp 2022 18
Erweitern und Überschreiben war auch mit php-Templates seit Contao 3.3 möglich neues Template-System von Contao 3.3 Twig bietet deutlich mehr Möglichkeiten als php-Templates Vererbung in mehreren Stufen (Kette) ist möglich Reihenfolge der Vererbung • Template aus dem Core oder einer Erweiterung • Template aus einer Erweiterung • Template aus dem globalen Templates-Ordner • Template des Themes Contao Developer Doku - Template Hierarchie 30.04/01.05.2022 Contao Camp 2022 26
Vorteile von Twig schnell – die Kompilierung erfolgt zu optimiertem PHP-Code ohne Overhead sichere Template-Engine sehr flexibel • Filter • Erweitern (extends) • Überschreiben (block) • Einfügen (include) • eigene Filter zur Manipulation der Ausgabe (eher für Entwickler) • eigene Tags (eher für Entwickler) Output-Encoding Contao Camp 2022 31 30.04/01.05.2022
Danke für die Aufmerksamkeit Danke an Moritz Vondano vom Contao Core-Team für die Umsetzung dieses Features und Dank auch für die kompetente Unterstützung bei der Vorbereitung des Vortrags Webdesign Dr. Maren Lange Berneckstr. 41 72275 Alpirsbach +49 7444 955 62 44 [email protected] www.webdesign-marenlange.de 30.04/01.05.2022 Contao Camp 2022 33