Was ist Headless CMS?

Traditionelle Content Management Systeme (CMS) bilden die Inhalte ab, die Speicherung in der Datenbank und auch das Frontend.

Mit Headless CMS versucht man das Ganze zu vereinfachen. Im Beitrag mehr dazu.

Einführung

WordPress (kurz WP), TYPO3 (kurz T3) oder Drupal wurden vor vielen Jahren entwickelt.

Speziell WP startete als Blogsoftware und wurde dann später in ein CMS umgewandelt.

Heutzutage werden Inhalte jedoch nicht mehr nur auf Webseiten dargestellt. Es gibt heutzutage unendlich viele Endgeräte auf denen diese angezeigt werden müssen. Hier einige davon:

  • Onlineshop: Inhalte werden auf eCommerce Anwendungen genutzt
  • CRM: Kundenlogins müssen dargestellt werden
  • Smartwatch
  • Internet of Things (Informationen werden an die Waschmaschine, die Klimaanlage oder das Auto gesendet)
  • Tablets
  • Smartphones
  • Und viele mehr

Das führt auch dazu das diese Systeme miteinander verbunden werden müssen.

Dies geschieht meistens über Schnittstellen. Die folgende Grafik soll das veranschaulichen:

Mit jedem neuen System, zum Beispiel einer App (Android) oder einem Product Information System (PIM) wird das komplette System jedoch immer komplexer.

In grossen Unternehmen arbeiten nicht selten grosse Entwicklerteams nur daran, alles aufrecht zu erhalten.

Wenn man nur eine Sache austauschen möchte, zum Beispiel das WP mit TYPO3 auswechseln. Dann wird es bereits extremst schwer. Da alle Schnittstellen angepasst werden müssen, Datenfelder übereinstimmen müssen und mehr.

Die Lösung

Mit dem Headless CMS Ansatz versucht man das zu lösen.

Man könnte auch von Headless Weblösungen sprechen, denn auch andere Systeme wie WP, T3, Magento oder auch jede andere Lösung kann so umgesetzt werden.

Bei Headless wird der Content/ Datenbank von dem Presentation Layer (Webdesign, HTML/ CSS/ JavaScript, Responsive Design, Template) getrennt. Siehe folgendes Bild.

Das Headless CMS ist nun nicht mehr verantwortlich für die Ausgabe des Frontends, sondern nur noch für die Verwaltung der Inhalte.

Keines der Systeme kommuniziert nun direkt mit dem Frontend. Sondern es wird eine API/ Schnittstelle entwickelt, über welche alle Informationen laufen.

Über diese API werden die Informationen zwischen Onlineshop, CMS, PIM, Mobile App und jedem anderen Gerät ausgetauscht. Es werden keine direkten Verbindungen zwischen den Systemen gebaut. Das reduziert die Komplexität ungemein.

Zudem ist auch das Frontend getrennt.

Zum Beispiel hat Magento oder WP kein eigenes Frontend mehr, sondern alle Daten werden über die API an das Frontend (welches man separat entwickelt) gesendet.

Das Frontend, welches man zum Beispiel mit HTML/ CSS/ JavaScript oder React.JS bauen kann, kann dann die benötigten  Daten anzeigen.

Das hat viele Vorteile. Einige davon sind:

1) Komponenten sind jetzt einfach austauschbar

Wenn man sich zum Beispiel entscheidet, anstatt Magento, ein andere Shopsystem wie Shopware oder etwas anderes wie eine Eigenentwicklung zu nutzen, dann kann man es relativ einfach austauschen. Auch weil es nicht komplex mit den anderen Systemen verbunden ist, sondern nur die API angepasst werden muss.

Voraussetzung ist dafür natürlich, dass die API Programmierungen in dem neuen System entsprechend entwickelt wurden.

2) Jede Technologie kann verwendet werden

Anstatt PHP könnte man auch ein PIM basierend auf .NET anbinden. Es ist also auch unabhängig welche Programmiersprache oder Technologie man nutzt.

3) Mehr Frontends können bedient werden

Beispielsweise hat ein Unternehmen eine Website. Nun entscheidet sie sich eine Mobile App zu entwickeln. Anstatt alles neu zu programmieren, kann das Frontend einfach angepasst werden. Besonders mit React.JS ist das einfach möglich und die Daten können wieder aus dem Onlineshop, dem PIM oder anderen Systemen über die vereinheitlichte API kommen.

Das ist ein grosser Vorteil den man durch ein Headless CMS hat.

4) Entwicklungszeit verkürzt sich

Durch die Vereinfachung der Schnittstellen und auch das simplere Frontend, kann man schneller entwickeln. Die im vorherigen Punkt 3 genannte Mobile App kann man nun in 100 Stunden, anstatt in 1000 Stunden programmieren, da man nicht alles von Grund auf neu programmiert.

5) Weniger Wartung

Auch muss man keine komplexen Konstrukte aufrecht erhalten.

IT Abteilungen und externe IT Dienstleister sind oftmals nur damit beschäftigt, alles irgendwie am laufen zu halten. Mit dem Headless Ansatz hat man daher auch weniger Wartung.

6) Schnellere Webseiten

Mit jedem fortschreitenden Jahr, sind Nutzer immer weniger bereit, lange auf das Laden von Webseiten zu warten.

Laut unterschiedlichen Studien verlassen Internetbesucher die Website, wenn es länger als 3 Sekunden dauert, bis diese lädt. Das ist jedoch eine etwas ältere Studie, heutzutage liegt dieser Wert sicher bei zwei Sekunden und weniger.

Durch die Nutzung von modernen Webtechnologien wie React.JS im Frontend und Node.JS für die Schnittstellenentwicklung schafft man es Single Page Anwendungen zu programmieren, welche blitzschnell laden. Auch weil sie es schaffen, mehrere Anfragen gleichzeitig zu bearbeiten.

Ein spannender Ansatz

Wenn man sich Google Trends anschaut, dann sieht man, dass sich seit 2013 bis heute der Interessenskurve nach oben bewegt.

Lange Zeit hat man versucht mit dem Cloud-Ansatz (alle Daten werden in einer zentralen Datenwolke gespeichert und upgedated) die Probleme und Herausforderungen von IT Abteilungen und Softwareentwicklung zu lösen.

Headless ist ein neuer Weg, welche in Zukunft dafür sorgen kann, dass solche Programmierungen besser laufen.

Die Entkopplung der Frontends von CMS, Onlineshop Systemen oder anderen Softwareanwendungen und die Verwendung von einer zentralen API, über die alles läuft, sorgt für eine Verbesserung von Softwaresystemen.

Erfahrene Programmierer sehen die Vorteile dieses Weges. Denn wie bereits erwähnt, die traditionellen Webanwendungen und Content Management Systeme waren nicht auf die heutigen Komplexitäten wie unterschiedliche Endgeräte (Mobile, IoT, eCommerce, etc.) ausgelegt, sondern lediglich für die Verwaltung und die Auflistung dieser auf Webseiten.

Heutzutage muss man Content Management und Webanwendungen neu denken.

Fazit

Die meisten grossen Unternehmen setzen immer noch auf komplexe Strukturen, wo eben nicht alles Headless ist. Sondern jedes System (Onlineshop, Nutzerlogins, etc.) irgendwie auf der Website angezeigt werden. Dabei werden unterschiedlichste Programmiersprachen, Shopsysteme, Produkverwaltungsysteme, Kontaktverwaltungsprogramme, etc.  genutzt.

Unternehmen müssen jedoch immer schneller auf sich ändernde Technologien, Ladezeiten, neue Geschäftsmodelle und neue Plattformen (Internet of Things, Suchmaschinen, etc.) vorbereiten. Diese Agilität oder um es einfacher auszudrücken, geschäftliche Beweglichkeit, erreicht man nur, in dem man neue Systeme einfach austauschen oder neue Frontends hinzufügen kann.

Headless CMS ist ein Schritt, um den Weg zu dieser neuen Agilität zu schaffen.

Was sind Ihre Erfahrungen?

Top Headless CMS im Vergleich

Die Vorteile von Headless in der Übersicht

Bilder: Canva


Der Autor: Sascha Thattil arbeitet bei YUHIRO und hilft Unternehmern und Unternehmen beim einfachen Aufbau von Programmier-Teams in Indien. YUHIRO ist ein deutsch-indisches Unternehmen welches IT Firmen, Agenturen und IT Abteilungen Softwareentwickler bereitstellt.

Schreibe einen Kommentar