Ein Erfahrungsbericht und nein, ich werde nicht gesponsert
Contao CMS
Warum überhaupt ein Content Management System, kurz CMS, verwenden? Klären wir zunächst einmal die Frage um was es hierbei eigentlich geht. Ein CMS ist wörtlich übersetzt ein Inhaltsverwaltungssystem und zwar von Webseiten. Den wohl bekanntesten Vertreter dieser Gattung kennt zumindest dem Namen nach bestimmt jeder schon: Wordpress. Ich fand Wordpress eigentlich cool, vor etlichen Jahren zumindest. Als die Entscheidung fiel auf ein CMS zu wechseln, was leider zur Folge hatte, dass ich besagte Webseite schon wieder neu machen musste, hatte ich zunächst natürlich an Wordpress gedacht. Dann habe ich mich eine Woche lang geärgert und ergebnislos das Handtuch geworfen. Um zu verstehen warum, muss ich noch einmal ein wenig ausholen um aufzuzeigen worin eigentlich der Unterschied zwischen einem CMS und der konventionellen Methode, Webseiten zu erstellen und zu verwalten, besteht.

OHNE CMS - und wie ich glaube, für kleinere Webseiten nach wie vor die bessere und weniger komplizierte Wahl - hat man seinen Code einfach selber geschrieben oder man hat mit einem WYSIWYG (what you see is what you get) Editor wie Frontpage von Winzigweich oder Adobe Dreamweaver quasi gecheatet. Die grafischen Elemente hat man mit Corel Draw oder Photopaint zusammen geschustert. Ich werde schon wieder nostalgisch... Na jedenfalls ob man jetzt von der Einen oder von der Cheater-Fraktion war, das Ergebnis war in einer Hinsicht gleich und zwar im Bezug auf die Tatsache, dass Inhalt und Code stehts miteinander vermischt waren. Zwar kam dann irgendwann CSS (Cascading Style Sheets) auf, was im Prinzip schon Layout, oder besser das Design einer Seite mehr oder weniger zentralisiert und vom Inhalt, dem Content, getrennt hat. Aber das war immer noch nicht wirklich das Gelbe vom Ei, was vor allem Twitter (das Unternehmen das von Elon Musk zerstört wurde und heute als sein persönliches Marketingwerkzeug unter der Bezeichnung X fungiert) schnell gemerkt hat. Twitter kämpfte zu dieser Zeit mit enormen Ressourcen gegen die Komplexität der Sache. Also hat man die Sache von Grund auf neu gedacht und das Bootstrap Framework entwickelt. Ein Open Source Frontend Framework. Ab hier lasse ich das mit dem wörtlichen Übersetzen... Also Sinn und Zweck war, die bis dahin gewachsene Komplexität in der Erstellung von responsiven Webinhalten stark zu vereinfachen, indem man dem ganzen einen Rahmen, ein Konstrukt verpasst hat und Inhalte komplett vom Code getrennt hat. Es gibt also ein zentrales Grid, ein Raster sozusagen, welches ein flexibles Layout zulässt, gefüllt mit vorher definierten Bausteinen. Was auch verhindert das bei großen Projekten sich die Programmierer und Webdesigner gegenseitig dauernd ins Gehege kommen. Da vermutlich die meisten die das hier lesen, zu Hause eher keine Webdesigner- und Programmierer-Abteilungen haben, wird diese Erkenntnis wahrscheinlich keine große Rolle spielen. Ok, also Webdesign ist komplizierter geworden, weil? Ich würde sagen weil die Anforderungen gestiegen sind. Nicht nur wegen der responsive Geschichte - also das sich Webseiten an das jeweilige Gerät anpassen, egal wie groß der Display, ob Touch oder nicht, usw - sondern natürlich auch wegen Tracking, Cookies, personalisierter Werbung, Datenschutzrichtlinien, Datensicherheit, usw. Wer heute Webinhalte erstellt, muss sich so einiger Pflichten und gesetzlicher Regelungen bewusst sein und diese auch technisch sicher umsetzen. Also zusammenfassend lässt sich feststellen das man nach wie vor natürlich auch ohne ein CMS auskommt, vorausgesetzt natürlich, man findet sich in einem Bootstrap Framework oder vergleichbaren zurecht. Gerade für irgendwelche kleinen, privaten Seiten, die nicht mit Tag's von Google oder wem auch immer versehen sind und daher auch kein Cookie-Banner oder Consent-Mangement brauchen, bietet sich auf jeden Fall an, sich seine Webseite auf die herkömmliche Art zusammen zu basteln wenn man ein wenig Vorkenntnisse hat und/oder gewillt ist, dazuzulernen. Vorsicht! Consent-Management ist nicht Content-Management - beim Consent-Management geht es darum die Zustimmung der Besucher zu den datenschutzrechtlichen Fragen zu verarbeiten, zum Beispiel "Zugestimmt zu essentiell, marketing, nicht zugestimmt zu tracking, usw." Ein Betreiber eines Webinhaltes muss nämlich unbedingt sicherstellen, das keine Daten an Google oder gar an Dritte gesendet werden, so lange die Frage der Zustimmung nicht geklärt ist, was man im Zweifelsfalle auch nachweisen können muss, da sonst im worst case durchaus saftige Strafen drohen. Wer übrigens schon mal versucht hat sich sein Cookie-Banner selbst zu stricken, dem mag vielleicht aufgefallen sein, dass man in der Google-Suche Millionen Cookie-Banner-Anbieter findet, brauchbare Code-Beispiele hingegen eher nicht. Wer sich geweigert hat, sich der Cookie-Banner-Mafia anzuschließen, dem sei der Blogeintrag über das Cookie-Banner ans Herz gelegt. In besagten Blogartikel ist ein Rezept zum Cookie-Banner erstellen enthalten - ganz ohne monatliche Gebühren.

MIT CMS ändert sich die Art und Weise eine Webseite zu erstellen und zu pflegen grundlegend. Wie man auf dem Bild rechts gut sehen kann, sind im Prinzip keinerlei Programmierkenntnisse von Nöten. Also ein CMS macht alles einfacher, der Artikel ist hiermit fertig. Ja, nein, die neue Einfachheit wird mit Komplexität erkauft. Wie jetzt? Ist jetzt das Eine komplizierter oder das Andere? Beides, womit wir wieder zum Anfang des Artikels zurückkommen. Dem Grund nämlich warum es hier und heute um Contao und nicht um Wordpress geht. Ich weiß beim besten Willen nicht warum man Wordpress verwenden sollte, ehrlich. Nachdem ich ja kurz zuvor die Webseite neu erstellt hatte und mit dem Design und dem Aufbau grundsätzlich nicht ganz unzufrieden war, hatte ich eine klare Vorstellung davon, wie die Seite auszusehen hat. Nur, versuch das mal in Wordpress umzusetzen. Vielleicht bin ich auch nur zu dumm dazu, wer weiß. Aber meiner Meinung nach ist Wordpress, aufgeblasen, unübersichtlich, die Menge an Plugins ist schier unmöglich zu überblicken, dazu kommen noch Probleme mit der Sicherheit (auch durch die Milliarden Plugins), unflexibel, kaum Skalierbarkeit.... Wie gesagt, eine Woche habe ich mich herumgeärgert damit, nicht mal einfachste Dinge hinzukriegen, die sonst in 3 min direkt im Code geändert werden können. Es war mir ein Graus. Das fast jeder Wordpress zu verwenden scheint, ist für mich kein Argument.
Contao

Ja gut, für Contao habe ich auch eine Woche gebraucht. Aber im Gegensatz zu meinem traurigen Experiment mit Wordpress, war danach die Seite im Großen und Ganzen fertig. Lass uns nochmal schnell zusammenfassen was ein CMS macht: Stell dir vor, du möchtest eine Website erstellen. Früher musste man dafür jede einzelne Seite von Hand in einer Programmiersprache (wie HTML und CSS) schreiben. Wenn du einen Text ändern wolltest, musstest du den Code öffnen und ihn dort bearbeiten. Das war kompliziert, fehleranfällig und zeitaufwendig, insbesondere wenn mehrere Leute daran arbeiten. Ein CMS löst dieses Problem und sogar noch eine ganze Reihe anderer. Außer natürlich das CMS zu bedienen ist noch komplizierter als die Seite selber zu programmieren. Mittlerweile werke ich seit einem Monat mit Contao und ich muss sagen: Ich mag es und zwar aus folgenden Gründen:
- Sicherheit - Contao scheint eines der sichersten Open Source CMS zu sein. Der Core ist schlank und hochwertig. Es gibt regelmäßige Updates und einen verlässlichen Entwicklungszyklus.
- Struktur und Ordnung - Contao erzwingt quasi eine ordentliche und logische Struktur
- komfortables Backend und mit dem Frontend-Helper von RockSolid kann man sogar vom Frontend aus während man die Seite auf Fehler prüft, gleich noch besagte Fehler ausbessern. Spart Zeit!
- Zugriffsrechte - man kann bis ins letzte Detail festlegen was welcher Benutzer oder Member (es wird auch zwischen Nutzern des Back und Frontend unterschieden) tun darf und was nicht.
- Kernfunktionen - während man bei Wordpress für nahezu alles ein Plugin braucht, ist das bei Contao nicht der Fall weil essentielle Funktionen schon enthalten sind.
- SEO und Barrierefreiheit - es erzeugt sauberen, standardkonformen HTML5 Code. WCAG-Standards und SEO-Funktionen (suchmaschinenfreundlich, sitemap.xls automatisch, usw) sind schon dabei.
Im wesentlichen besteht Contao aus dem Backend, das ist der Teil in dem die Seite erstellt, geändert und ergänzt wird und aus dem Frontend, die Bühne wenn man so will. Der Aufbau der Webseite gliedert sich wiederum in 3 Hauptebenen.
- Die Seitenstruktur
- Das Grundgerüst der Webseite. Hier wird im Backend die Baumstruktur angelegt, die später auch die Navigation erzeugt
- Das Seitenlayout
- Jede Seite in diesem Baum hat Eigenschaften, die wichtigste davon ist das Seitenlayout
- Das Seitenlayout ist die Struktur der einzelnen Seite (Kopfbereich, Spalte links, Hauptspalte, Fußbereich, usw)
- Artikel und Inhaltselemente
- Der eigentliche Inhalt
- Jede Seite kann beliebig viele Artikel und Elemente enthalten.
- Ein Inhaltselement kann sein: Überschrift, Textblock (mit eingebauten Editor), Bild oder eine Galerie von Bildern, Slider, Tabelle, Link, Formular, usw
Sicherheit!
Hauptgrund für mich auf ein CMS umzusteigen war hauptsächlich Sicherheit und Benutzerverwaltung. In der guten alten Zeit war das Internet noch mehr oder weniger unschuldig. Vor allem Technik-Freaks, Studenten und sonstige Insider haben sich damit ursprünglich verbunden. Dieses Bild hat sich massiv gewandelt. Ist man kein IT-Sicherheitsspezialist oder oder kämpft nicht beruflich tagtäglich gegen Versuche den Mailserver eines Hosters sauber zu halten um nicht gleich von sämtlichen Diensten ausgeschlossen zu werden (wie Google zb), dann hat man vermutlich keine Vorstellung davon welche Masse an Schadsoftware, Einbruchsversuche, Würmer, Viren und Bösewichter sich im Netz mittlerweile tummeln. Bösewichter wollen Kontrolle über deinen Webserver, sie wollen Benutzerdaten zum Verkaufen im Darknet oder auch nur an neue Passwörter für Schadsoftware kommen, den Webserver für DDOS Attacken nutzen oder ihn benutzen um Spuren zu verwischen, oder was auch immer. Fest steht jedenfalls das sicher niemand der Webinhalte ins Netz stellt, schon gar nicht wenn der eigene Name darauf steht, möchte das irgendjemand für welche Zwecke auch immer, Daten seiner Kunden, Subscribers, Members, oder was auch immer abgreift und damit irgendeinen Mist anstellt. Fest steht auch das ich keine Zeit habe mir das Wissen eines IT-Sicherheitsmenschen zu erarbeiten und schon gar nicht da auch noch permanent uptodate zu bleiben. Heute für die Sicherheit von Produktiv-Systemen verantwortlich zu sein ist eine wirklich anspruchsvolle Aufgabe, die viel Zeit und Hingabe verlangt - vor allem auch deshalb weil die Angreifer ja stehts einen Schritt voraus sind. Angenommen man hat vielleicht auch noch das Pech für Microsoft Produkte verantwortlich zu sein... Man stelle sich vor es wird eine neue Zero-Day Lücke erkannt und die verbreitet sich im Darknet. Der Admin des betroffenen Servers weiß natürlich nichts von seinem Glück weil noch nicht einmal der Hersteller des Server-Betriebssystems von seinem Glück weiß und noch weniger gibt es einen Patch der das Problem behebt. Wenn dann im worst case Angreifer auf einmal Administratorrechte im Netzwerk haben und sich vielleicht auch noch zunächst unauffällig verhalten, sodass sie noch alle möglichen Rechte und sonstige Hintertüren einbauen können, bevor sich der eigentliche Angriff offenbart, wie zum Beispiel Daten verschlüsseln um Geld zu erpressen, Daten zu stehlen oder falsche Daten zu streuen, oder einfach nur möglichst grauenhaften Schaden anzurichten im Auftrag eines Konkurrenten oder einer bösen Regierung oder was auch immer. Spätestens wenn man sieht wie ein Admin mit schweißnassem Gesicht mit Panik in den Augen sämtliche Stecker im Serverraum zieht, was nebenbei bemerkt sicher auch negativ für die Produktivität des jeweiligen Unternehmens sein dürfte, dann wird einem bewusst, das Sicherheit ein harter Job ist. Möglicherweise habe ich hier ein wenig weit ausgeholt, schließlich geht es doch nur um eine Webseite, aber besagte Webseite ist ja da um ein Image zu bilden, um Wissen zu vermitteln, Produkte zu verkaufen und so weiter. Der Auftritt im Netz speziell für eine Firma ist extrem wichtig und es hat viel mit Vertrauen zu tun und sollte unbedingt seriös sein. Darüber hinaus ist es auch schwer und langwierig eine Community oder einen Kundenstamm aufzubauen. Negative Kritik fängt man sich viel leichter ein als positive. Entsprechend heilig sollten einem daher die Daten seiner Nutzer, Kunden, usw sein. So, nachdem ich mich jetzt ausgiebig ausgelassen habe darüber wie wichtig Sicherheit ist und wie wenig Zeit und Lust ich andererseits dazu habe mich mit dem Thema auseinander zu setzen (schließlich bin ich Mechatroniker und kein IT-Sciherheitsmensch), kommen wir auch wieder auf das ursprüngliche Thema zurück: Das CMS. Contao setzt zum Beispiel auf meiner Seite Cookies (die man nicht ablehnen kann), die nur für die Dauer einer Sitzung gespeichert bleiben und die verhindern das sogenannte Cross-Site-Request-Forgery Angriffe auf die Seite durchgeführt werden. Ich habe keine Ahnung was genau das ist und das tolle daran, ich brauche es auch nicht zu wissen. Weil Leute die auf genau solche Themen spezialisiert sind Contao weiter entwickeln und ich brauche in der Regel nur Updates zu machen. Klar ist nichts 100% sicher - aber die Chance das bei einer mit Contao erstellten Seite irgend ein Mist passiert ist auf jeden Fall geringer als wenn man sich seine Seite sonst irgendwie zusammenschustert aus einem gratis-template aus dem Internet und irgendwelchen codeschnipseln von irgendwo. Aber das kann Wordpress doch auch!? Ja ich glaube eigentlich nicht und zwar aus folgenden Gründen: Nach meiner Erfahrung (derzeit rund 33 Jahre in verschiedensten Bereichen) scheint es sich so zu verhalten und zwar völlig irrelevant ob es nun um Mechanik, Elektronik, IT oder was auch immer geht - je komplexer ein System, desto fehleranfälliger. Speziell bei Wordpress kommt noch die unglaubliche Anzahl an Plugins dazu. Von jedem einzelnen Plugin sicherzustellen das es sauber ist, kompatibel und keinerlei Potential für Gemeinheiten hat, scheint mir in dieser Größenordnung eher unrealistisch. Auch trägt alleine schon die Verbreitung von Wordpress mit Sicherheit dazu bei, das Wordpressseiten ein gängiges Ziel sind. Man stelle sich vor es findet sich eine Sicherheitslücke, die Millionen Webseiten betrifft - für finstere Gestalten natürlich viel verlockender weil es deren Möglichkeiten natürlich entsprechend vergrößert. Etwas zu verwenden weil alles es tun ist meiner Meinung nach definitiv kein Argument für etwas sondern viel eher dagegen.
Sie müssen sich anmelden, um Kommentare hinzuzufügen.