TYPO3 – Seitenlayouts mit Fluid realisieren
Wenn es um die Erstellung von Templates oder um die Entwicklung eigener Erweiterungen für die Umsetzung von Seitenlayouts mit TYPO3 geht, kommt man an Fluid nicht vorbei. Egal ob TYPO3- Entwickler oder -Integrator, Kenntnisse in Fluid bringen einen entscheidenden Vorteil. Profis bezeichnen es nicht von ungefähr als Herzstück des Content-Management-Systems (CMS).
Was ist TYPO3 Fluid?
TYPO3 Fluid ist eine Template-Engine, also eine maschinelle Lösung für die Erstellung von Vorlagen. Entwickelt wurde Fluid zur Inhalts- und Datenausgabe für PHP (eine Syntax, die zur Erstellung von Websites verwendet wird).
Fluid verfügt über nützliche Funktionalitäten, wie Bedingungen, Kontrollstrukturen oder Platzhalter. Einzelne, mit Fluid erstellte Templates können mit Layouts oder Partials (sich wiederholende Template-Segmente, welche in mehreren Vorlagen verwendet werden können) verknüpft werden. Eine besonders hohe Komplexität in der Ausgabelogik lässt sich bei Fluid mittels sogenannter ViewHelper erreichen.
Welche Vorteile bringt die Template Engine?
Generell haben Template Engines den Vorteil, die Logik in Vorlagen zu verbessern und For-Schleifen als Kontrollstruktur zu nutzen. For-Schleifen definieren die Wiederholung oder Anpassung bestimmter Blocks. Fluid grenzt sich von anderen Template Engines, wie Smarty oder Twig ab, da es direkt aus dem TYPO3 Core entwickelt wurde und im Umfeld des CMS als bewährte und beste Lösung gilt. Smarty hingegen steht eher im Shopware-Kontext, Twig im Zusammenhang mit Symfony.
Vorteile von TYPO3 Fluid:
- Hohe Erweiterbarkeit & Flexibilität
- Hohe Sicherheitsstandards (im Vergleich zum Cross-Site-Scripting)
- Hohe Usability (mit einfachem XML entwickelt)
Für wen ist TYPO3 Fluid geeignet?
Fluid ist vor allem für Frontend-Entwickler gedacht, die mit dem CMS TYPO3 arbeiten. Das Backend des CMS wurde komplett mit Fluid gerendert, also ausgearbeitet. Spezielle technische Anforderungen für die Nutzung von TYPO3 Fluid gibt es nicht. Fluid, oder auch EXT.fluid, zählt zu den TYPO3-Standard-Erweiterungen, was eine problemlose Installation möglich macht.
Wie lassen sich Seitenlayouts mit Fluid umsetzen?
Um Seitenlayouts mit TYPO3 Fluid umsetzen zu können, braucht es fundierte Kenntnisse zu den Kern-Elementen der Template Engine: Templates, Layouts und Partials.
Templates meinen einzelne Dateien, die entweder direkt gerendert oder über einen Controller-Namen aufgelöst werden. Layouts umfassen optionale, gemeinsam genutzte Dateien, die wiederum von Vorlagen verwendet werden. Partials sind als kleinster Teil von TYPO3 Fluid ebenfalls gemeinsame Dateien, die Designbausteine enthalten und von überall benutzt werden können.
Um ein Seitenlayout umzusetzen, bereiten Sie sowohl Vorlagen, Layouts und Partials vor. Um keine eigenen Partials schreiben zu müssen, nutzen Sie ViewHelpers. Dabei handelt es sich um spezielle, vorgefertigte Partials, die das alltägliche Arbeiten mit der Engine erheblich erleichtern.
Im Rahmen der Erweiterbarkeit von Fluid, lassen sich sogar eigene ViewHelper bzw. Snippets erstellen.
Mögliche Herausforderungen
Einige Fluid Plugins befinden sich noch in einem frühen Entwicklungsstadium, weswegen es hier an der einen oder anderen Stelle noch etwas haken könnte. Zudem ist die Möglichkeit der Entwicklung von Snippets, die sich mehrfach verwenden lassen, zwar ein echter Vorteil, allerdings zehrt das an der Performance, was lange Ladezeiten hervorrufen kann. Eine mögliche Lösung ist, wiederkehrende Seiteninhalte via Caching schneller bereitzustellen.
Fazit: Fluid ist eine leistungsfähige Unterstützung in der Layoutentwicklung
TYPO3 Fluid bietet, gerade durch die ViewHelper, einen optimalen Support für Frontend-Entwickler in vielen Bereichen. Durch beachtliche Erweiterungsmöglichkeiten und Flexibilität sowie eine hohe Nutzerfreundlichkeit durch überschaubare Bedienung ist es für die Erstellung von Seitenlayouts definitiv eine sinnvolle Unterstützung– die sich dank fortlaufender Entwicklung zukünftig noch weiter verbessern wird.
Autor: Markus List, Technischer Projektleiter bei 3m5.
Markus List ist TYPO3 CMS Certified Consultant (TCCC) und TYPO3 CMS Certified Editor (TCCE). Bei der Stuttgarter TYPO3 Agentur 3m5. betreut er mit agilen Teams die Webseiten-Projekte großer Marken und begeistert Kunden mit TYPO3.
Rückmeldungen