Headless-CMS: Ein Traum für Frontend-Gurus

Was ist ein Headless-CMS?

Bei dem oben genannten Szenario kommen wir mit einem „normalen“ CMS an unsere Grenzen. Möglicher Ausweg ist ein sogenanntes Headless-CMS. Was ist der Unterschied? Bei einem traditionellen CMS sind das Front- und Backend eng verzahnt. Das sieht bei der Headless-Variante anders aus. Hier kümmert sich das Backend – verbunden mit einer Datenbank – um die Bearbeitungsfunktionalitäten sowie die Bereitstellung einer API (Programmierschnittstelle) und verzichtet komplett auf ein Frontend. Für die Erstellung eines Frontends, welches die im Backend eingetragenen Daten ausliefert, muss sich der Betreiber in Eigenregie kümmern.

Mit einem Headless-CMS kannst du verschiedene Medien bespielen.

Mit Headless ist alles möglich

Technisch funktioniert das Ganze wie folgt: Das Backend speichert die Content-Daten in einer Datenbank (z. B. MySQL). Diese Daten werden vom Headless-CMS mit einer REST-API bereitgestellt, über die sie eine Frontend-Applikation abrufen kann. Das ist mit den verschiedensten Programmiersprachen und Technologien möglich. Egal, ob React, vue.JS oder Angular, hier sind euch keine Grenzen gesetzt.

 

Somit könnt ihr mit einem Headless-CMS bspw. eine Website in PHP und eine iOS-App in Swift entwickeln. Anders als bei einem üblichen CMS, seid ihr nicht nur an PHP und MySQL gebunden. Der Vorteil: Die Daten werden vom Headless-CMS verwaltet und standardisiert bereitgestellt. Somit können sie von unterschiedlichsten Clients und Programmiersprachen einheitlich im JSON-Format abgerufen werden.

 

Natürlich gilt hierbei immer: Abgerufen werden kann nur das, wofür Berechtigungen vergeben sind. Ihr müsst also keine Angst haben, dass alle Daten über die öffentliche API zur Verfügung stehen.

Eure Vorteile

Ihr könnt ein und dieselbe Datenquelle für eure Applikationen verwenden. Denn die Inhalte werden serverübergreifend über die API abgerufen. Im Umkehrschluss habt ihr es mit weniger Komplexität zu tun, als bei einem normalen CMS. Außerdem könnt ihr eure Frontends in verschiedenen Sprachen entwickeln und habt zumeist zusätzlich eine hervorragende Skalierbarkeit.

Ein Nachteil

Es ist euch nicht möglich, „mal eben“ eine Microsite zusammenzuklicken. Schließlich ist hierfür immer ein Frontend-Entwickler von Nöten, der die Anpassungen macht.

Headless-CMS in verschiedenen Varianten

Zudem sei noch gesagt, dass es verschiedene Varianten eines Headless-CMS gibt. Einige sind in PHP geschrieben, andere in Node.js oder Go. Ein Richtig oder Falsch gibt es hier nicht – schaut selbst, welches System euch zusagt. Eine Übersicht findet ihr unter: https://headlesscms.org/.

Directus

Bei Mittwald haben wir mit Directus ganz gute Erfahrungen gemacht. Das Programm ist in PHP geschrieben und arbeitet mit MySQL als Datenspeicher. So kann es problemlos auf jedem Hosting-Account bei uns betrieben werden. Schaut gerne mal auf deren Webseite vorbei und probiert das System aus. 
Ich wünsche viel Spaß dabei! Solltet ihr Fragen dazu haben, schreibt sie gerne in die Kommentare. ;-)

Directus ist ein Headless-CMS, das Webhoster Mittwald schon getestet hat.

Kommentare

  1. Patrick am
    Ja, wir brauchen wirklich dringend node.js, um effektiver als Entwickler arbeiten zu können.
    Antworten
  2. Stefan am
    Wann bietet Mittwald endlich nodejs an?
    Antworten
  3. Matthias Andrasch am
    Hi,

    bin gerade über den Mittwisser-Podcast auf diesen Beitrag gestoßen.

    Interessante Entwicklung:
    Directus wird künftig als node-first weiterentwickelt, die PHP-Version soll weiterhin bestehen bleiben als Priorität 2.
    Siehe https://twitter.com/directus/status/1330642898610688002

    VG
    Antworten
  4. Sascha Thattil am
    Super Beitrag. Danke für den Hinweis auf Contentful und das es auf PHP läuft. Das kann eine interessante Alternative sein.

    Sicherlich kann man auch TYPO3 oder WordPress als Headless nutzen. Und dann im Frontend Sachen, wie von Euch beschrieben, wie React.JS. Damit sind die Webseiten dann auch schneller beim laden.

    Ich beschäftige mich nun seit einiger Zeit mit dem Thema. Danke nochmal für die Informationen.

    Viele Grüsse
    Sascha Thatti
    Antworten
  5. Matthias Kurz am
    Spannende Sache, gerade für Angular-Applikationen. @Mirko - du motivierst mich immer, mal wieder Neos unter die Lupe zu nehmen ...
    Viele Grüße, Matthias
    Antworten
  6. Mirko Kaufmann am
    Ein schöner Tech-Artikel. :)

    Der Headless Ansatz lässt sich auch wunderbar in Neos CMS realisieren: In Neos werden die Inhalte gepflegt und dann die Ausgabe einfach im gewünschten Format bestimmt. Entweder in HTML, in JSON oder GraphQL. Die GraphQL API steht aktuell noch als eigenständiges Package zur Verfügung. Der Plan ist es aber die Schnittstelle mittelfristig in den Core von Neos aufzunehmen.

    GraphQL Package auf Github:
    https://github.com/bwaidelich/Wwwision.Neos.GraphQL

    Why monolith? Go headless! Using Neos as content API provider:
    https://www.youtube.com/watch?v=KwSwoSKx4cY

    Viele Grüße

    Mirko
    Antworten
    1. Kristina El-Issa am
      Hey Mirko,

      vielen Dank – auch für den Hinweis zu Neos. ;-)

      Gigahertzliche Grüße
      Kristina
      Antworten

Kommentar hinzufügen