Was ist ein CMS
CMS – Content-Management-System, im Grunde ein System zur Verwaltung einer Website. WordPress ist das bekannteste davon.
Warum nicht WordPress
Ich möchte WordPress nicht verwenden, weil mir die UI-Entwicklungserfahrung nicht gefällt. Ich bevorzuge den programmatischen Weg. Allerdings mag ich die Einfachheit, mit der man damit Blogbeiträge schreiben kann, und wie mächtig es mit all den Plugins sein kann. Aber wenn man nicht viel braucht, reicht eine einfache kostenlose statische Website völlig aus, 9 USD pro Jahr, ohne dass man einen Server benötigt.
Jetzt noch ein Open-Source-CMS dazu, und es kann losgehen.
Das CMS finden
Ich habe in den letzten Monaten einige verschiedene CMS ausprobiert, wie Tina, Netlify und Sanity.
Das CMS, das ich gerade verwende, ist Tina, ich finde es ganz in Ordnung. Aber das Template, das ich mit Astro verwendet habe, hat hier und da einige Probleme. Keine wirklich ruhige Fahrt, aber zumindest funktioniert es.
Im Grunde wollte ich nur einen einfachen statischen Blog. Ich habe Netlify (Decap) mit meiner 11ty-Seite verwendet, wollte aber etwas Neues ausprobieren, also nutze ich jetzt Astro mit Tina, um es zu erleben.
Was ich gerne vorher gewusst hätte
Als ich mir JEDES CMS angesehen habe, das Leute auf Reddit empfohlen haben, bin ich auf Sanity und Payload gestoßen.
Ich wünschte, ich hätte den Unterschied zwischen einem Headless-CMS und einem Nicht-Headless-CMS gekannt.
Headless-CMS vs. Nicht-Headless-CMS
Was Sanity und Payload anders machen, ist, dass sie headless sind.
Headless-CMS bedeutet, dass der Inhalt (z. B. Blogbeiträge, Seiten) von deinem Frontend getrennt ist. Die Daten werden auf einem Server gespeichert, entweder selbst gehostet oder in deren Cloud gehostet. Und dein Frontend ruft einfach die API auf, um diese Daten im JSON-Format abzurufen.
Bei einem Head-CMS wie dem, das ich verwendet habe – Netlify oder Tina CMS – funktionieren ohne Server. Das “Admin”-System zeigt dir einfach die Daten deiner Website an und nimmt Änderungen direkt daran vor, dann wird das gesamte Projekt für die Produktion neu gebaut. Außerdem werden die Blogbeiträge in Markdown geschrieben, sodass jedes Mal, wenn du einen neuen Beitrag schreibst, eine neue .md-Datei in deinem Quellordner liegt.
Also eines mit einem Server, eines ohne. Eines verwendet wohl JSON, das andere Markdown.
Und natürlich ist das ohne Server einfacher einzurichten und hat in den meisten Fällen niedrigere Betriebskosten.
Was ich nicht verstehe
Es gibt einfach so viele CMS da draußen, ich habe schon eine Menge weggelassen. Jedes funktioniert etwas anders, aber größtenteils gleich.
Ich kann verstehen, warum Leute einfach zu WordPress gehen. Es hat eine lange Geschichte, jeder weiß, wie man es benutzt, und es ist mächtig und skalierbar, ob es dir gefällt oder nicht.
Als Alternative ist Sanity schön, weil es einen großzügigen kostenlosen Tarif bietet, ohne dass man sein eigenes Backend hosten muss. Für einfache Nutzung könnten Netlify und Tina ausreichen. Aber wenn man skalieren will, scheint Sanity die bessere Option zu sein. Oder man kann zu WordPress zurückkehren.
Was ich jedoch nicht verstehe, ist, ob es headless ist oder nicht, Markdown oder nicht – wie spielt das langfristig eine Rolle?
Vermutlich kann ein selbst gehostetes Headless-CMS-Backend lange funktionieren, es gibt keine Vendor-Lock-in. Aber man muss sich trotzdem damit abfinden, das Headless-CMS-System von jemandem zu verwenden, um die Daten zu speichern und abzurufen.
Markdown hingegen funktioniert im Grunde in jedem Nicht-Headless-CMS. Nur dass man möglicherweise Tausende von Markdown-Dateien auf seiner Website speichern muss, wenn nicht sogar mehr, was keine langfristige Lösung zu sein scheint.
Fazit
Also ist es mir jetzt egal.
Verwende einfach, was dir gefällt, und warte, bis der Blogbeitrag Zehntausende erreicht. Bis dahin sollte ich etwas Geld verdienen, um einen Entwickler einzustellen, der die Migration zu einem schicken neuen CMS zu diesem Zeitpunkt durchführt. Ich möchte mir darüber wirklich keine Gedanken machen.