Was sind Content Blocks?

Content Blocks ist ein Feature aus dem TYPO3-Umfeld, das mit TYPO3 v13 in den Mittelpunkt rückt und die Erstellung eigener Inhaltselemente deutlich vereinfacht. Wo bisher TCA, TypoScript und Fluid in unterschiedlichen Dateien zusammengeführt werden mussten, beschreibt nun eine gebündelte Konfiguration ein Inhaltselement als Ganzes. Das senkt die Einstiegshürde für Integratoren spürbar und macht eigene Content-Elemente schneller einsatzbereit, ohne die Flexibilität von TYPO3 aufzugeben.

Vorteile gegenüber der klassischen Methode

Im Vergleich zur klassischen Vorgehensweise verschiebt sich der Aufwand vom Verteilen auf mehrere Dateien hin zu einer kompakten Definition pro Element. Statt TCA in PHP zu pflegen und das Rendering über TypoScript zu steuern, beschreibt eine YAML-Datei die Felder, während ein Fluid-Template das Frontend bestimmt. Vieles, was früher manuell zu erledigen war, etwa das Einbinden von Icons oder das Mapping zwischen Backend und Frontend, übernehmen Content Blocks automatisch. Im Ergebnis lassen sich neue Inhaltselemente schneller umsetzen, sind leichter wartbar und erschließen sich auch Personen, die nicht jahrelang mit den klassischen TYPO3-Konzepten gearbeitet haben.

Struktur eines Content Blocks

Ein Content Block lebt in einem eigenen Verzeichnis innerhalb eines Pakets unter einem Vendor-Prefix. Innerhalb dieses Verzeichnisses werden die Felder eines Elements in einer YAML-Datei beschrieben, das Frontend wird über ein Fluid-Template gerendert, und Assets wie das Element-Icon liegen in einem dafür vorgesehenen Unterordner. Diese feste Struktur sorgt für Wiedererkennbarkeit zwischen Projekten und erleichtert den Wechsel zwischen verschiedenen TYPO3-Installationen.

Felder und Konfiguration

In der zentralen YAML-Konfiguration werden Name, Titel, Gruppe und die einzelnen Felder eines Inhaltselements definiert. Ein typisches Teaser-Element kombiniert beispielsweise eine Überschrift, einen Textbereich mit Richtext-Option, ein Bild und einen Link. Für die Auswahl der passenden Feldtypen steht eine breite Palette zur Verfügung:

  • Einfache Eingabefelder wie Text, Textarea, Richtext, E-Mail, Number, Color und Date
  • TYPO3-spezifische Felder wie Link für den Link-Wizard und File für Dateien und Bilder
  • Auswahl- und Strukturfelder wie Select, Checkbox, Radio sowie Collection für wiederholbare Gruppen

Im zugehörigen Fluid-Template stehen die Felder anschließend unter dem Datenobjekt zur Verfügung und können mit den bekannten ViewHelpern ausgegeben werden.

Migration bestehender Inhaltselemente

Content Blocks lassen sich schrittweise in bestehende Projekte einführen. Neue Inhaltselemente werden direkt als Content Block angelegt, während klassische Elemente parallel weiter genutzt werden können. So entsteht keine harte Migrationsklippe, sondern ein gleitender Übergang, der sich am realen Bedarf eines Projekts orientiert. Bestehende Elemente können nachträglich migriert werden, sobald sie ohnehin überarbeitet werden müssen.

Empfehlungen für die Praxis

Damit Content Blocks ihre Stärken voll ausspielen, haben sich einige Konventionen bewährt:

  • Konsequente Verwendung eines Vendor-Prefix für eigene Elemente, um Konflikte mit Erweiterungen aus dem Ökosystem zu vermeiden
  • Semantische, sprechende Feldnamen, die im Backend wie im Template leicht zu lesen sind
  • Wiederverwendbare Blöcke als eigenständige Pakete bereitstellen und in einer kurzen Übersicht dokumentieren

So entsteht über die Zeit eine Bibliothek von Inhaltselementen, die sich in mehreren Projekten einsetzen lässt und den Aufwand für neue Vorhaben spürbar reduziert.

dkd-Banner für die Contentpflege für TYPO3-Websites mit grünem Hintergrund

❮   Zurück