Headless CMS mit TYPO3

Foto: Skye Studios,...

Foto: Skye Studios,...

Was sind Content Management Systeme?

Content Management Systeme wie Wordpress, TYPO3 oder Drupal sind vielen bekannt. Ganz allgemein dient ein Content Management System der Verwaltung von Inhalten und deren Darstellung für ein Zielpublikum. Im allgemeinen Sprachgebrauch bezeichnet ein Content Management System eine Softwarelösung, die diese Prozesse unterstützt. Der Begriff Content, oder auf Deutsch Inhalt, wird oft synonym mit dem Begriff Information verwendet. Entscheidend ist hierbei, dass diese Information für den Austausch im Sinne einer Kommunikation gedacht ist und letzten Endes von Menschen aufgenommen wird.

Die obige Definition von Content Management Systemen teilt deren Aufgabe bereits in zwei Teile: die Verwaltung und die Darstellung von Inhalt. Die Unterscheidung von Frontend und Backend im Kontext von Content Management Systemen entspricht dieser Aufgabenteilung. Klassische Content Management Systeme übernehmen beide Aufgabenteile. Im Backend können die Inhalte als redaktionelle Tätigkeit erstellt und verwaltet werden. Das Content Management System speichert die Inhalte in einer Datenbank oder als Dateien und macht den Inhalt damit persistent. Klassische Content Management Systeme rendern den gespeicherten Inhalt automatisch in ein HTML-Dokument und stellen den Inhalt somit dar. Das Frontend ist gleichbedeutend mit der Darstellung der Inhalte.

Headless, Decoupled und Hybrid

Ein Headless CMS verzichtet auf die Darstellung des Inhalts und dient lediglich der Verwaltung von Inhalt. Stattdessen stellt es die Inhalte über eine Schnittstelle, meistens eine REST API, zur Verfügung. Die eigentliche Webseite zur Präsentation der Inhalte muss zusätzlich erstellt werden. Was zunächst wie ein Rückschritt klingt, hat den Vorteil, dass die Inhalte flexibler verwendet werden können und nicht auf eine Art der Präsentation festgelegt sind. Dem Backend können so beliebig viele Frontend-Versionen zur Seite gestellt werden und die Entwicklung des Frontends hängt nicht von einer bestimmten Programmiersprache ab. Außerdem ist die Gesamtanwendung durch die Entkopplung modularer aufgebaut und dadurch besser wartbar. Aus diesem Grund haben auch klassische Content Management Systeme ihre Funktionalitäten um eine entsprechende Schnittstelle erweitert. Wenn sowohl die Darstellung der Inhalte übernommen wird als auch zusätzlich eine Schnittstelle vorhanden ist, die die Inhalte verfügbar macht, spricht man von einem Hybrid CMS oder einem Decoupled CMS.

TYPO3 als Headless CMS

TYPO3 entspricht von Haus aus einem klassischen Content Management System, das sowohl die Verwaltung als auch die Darstellung der Inhalte übernimmt. Das Rendering realisiert TYPO3 über die eigene Skriptsprache TypoScript und liefert letztendlich HTML-Dateien an den Client zurück. Die Headless Extension erweitert TYPO3 um eine REST API, über die sie die Inhalte im JSON Format zur Verfügung stellt. Die Ausgabe von HTML-Dateien entfällt dadurch. TYPO3 wird komplett „kopflos“. Die Inhalte können anschließend flexibel genutzt werden. Durch maßgeschneiderte Lösungen ist es auch möglich TYPO3 um eine JSON-Ausgabe zu erweitern und das interne Rendering gleichzeitig zu behalten. In diesem Fall entspricht TYPO3 einem Hybrid CMS.

Autor: Luka Mutschler