Startseite > Wieso Wagtail statt Wordpress und Co?10.2.2021

Wieso Wagtail statt Wordpress und Co?

Als Web-Entwickler habe ich mich auf maßgeschneiderte Content Management Systeme (CMS) spezialisiert. Ich werde oft gefragt, ob ich Wordpress einsetze. Aufgrund der weiten Verbreitung kennen das die meisten. Für kleine Projekte mit einfachem Funktionsumfang oder begrenztem Budget kann Wordpress durchaus eine angemessene Lösung sein. Sobald jedoch ein gewisser Grad an Komplexität überschritten wird, spricht zunehmend mehr gegen den Einsatz von Wordpress.

Nach langjähriger Erfahrung mit verschiedenen CMS in vielen Kundenprojekten mit einem Fokus auf Flexibilität und Bedienbarkeit ist meine Wahl auf Wagtail gefallen. Meiner Meinung nach die beste Lösung für zukunftssichere Projekte, auch bei sehr komplexen Anwendungen. Zu diesem Schluss kamen übrigens auch Firmen wie NASA, Google, Oxfam, Mozilla, MIT, NBC, BMW sowie mehrere Regierungen. Die Gründe dafür will ich hier in einem Vergleich zu Wordpress genauer beleuchten.

Anpassbarkeit und Usability

Wordpress basiert auf einer über 15 Jahre alten Architektur, die für einfache Webseiten und Blogs ausgelegt wurde. Diese Blog-Struktur ist fest im System verankert, so dass Projekte mit anderen Anforderungen in diese Struktur “gequetscht” werden müssen. Das ist zwar möglich durch die Nutzung von Plugins, dafür existiert jedoch kein standardisierter Ansatz. So entstehen schnell Kompromisse, Abhängigkeiten und Hacks, die sich negativ auf die Bedienbarkeit, Wartbarkeit und Stabilität des Systems auswirken. Das bleibt schlussendlich an den Redakteur:innen hängen: Die Benutzeroberfläche wirkt unaufgeräumt und überladen. Häufig müssen Inhalte an unterschiedlichen Stellen gepflegt werden. Vor allem bei umfangreichen Projekten, die über längere Zeiträume hinweg weiterentwickelt werden, führt das zu Frust, Fehlern und technischen Schulden.

Wagtail hingegen fungiert eher als ein flexibles CMS-Grundgerüst, das bis ins Detail erweitert werden kann. Eigene Datenstrukturen, spezielle Funktionen, Anbindungen an Schnittstellen oder auf das Projekt zugeschnittene Tools lassen sich standardisiert implementieren und sauber in die Benutzeroberfläche integrieren. Die Usability für Redakteur:innen steht hier immer im Vordergrund. Inhalte werden auf intuitive Art gepflegt und sind schnell auffindbar. Sowohl die Benutzeroberfläche als die Programmierschnittstellen bauen auf einheitliche Standards auf, was sich positiv auf die Übersicht auswirkt, sowohl im Redaktionsinterface als auch im Programmiercode (Stichwort Wartbarkeit).

Wagtail gelingt der Spagat zwischen Anpassbarkeit und einer aufgeräumten Benutzeroberfläche auf elegante Art und Weise.

Bilder sprechen mehr als tausend Worte. Es folgen Screenshots der Redaktionsinterfaces der beiden Systeme:

Wordpress

Startseite Wordpress Editor Wordpress Eigene Datentypen in Wordpress Mediathek Wordpress

Wagtail

Startseite Wagtail Editor Wagtail Eigene Datentypen in Wagtail Mediathek Wagtail

Sicherheit

Trotz der genannten Limitierungen ist Wordpress das am meisten genutzte CMS. Statistiken zufolge werden ein Drittel aller Webseiten mit Wordpress betrieben. Das ist nur einer der Gründe wieso unzählige Sicherheitslücken für Wordpress existieren. Selbst wenn die Wordpress-Installation auf dem neuesten Stand ist, sind es oft Plugins, die für Sicherheitslücken verantwortlich sind. Aufgrund der uneinheitlichen Struktur von Wordpress ist es schwierig, dem entgegenzuwirken. Dies kann sich auch auf das Suchmaschinen-Ranking bei Google und co auswirken.

Wordpress ist ein Paradies für Spammer, Bots und Hacker. Kein anderes System ist von so vielen Angriffen betroffen.

Wagtail ist nicht nur wegen seiner kleineren Zahl an aktiven Installationen sicherer. Wagtail baut auf das erprobte Django Web-Framework auf und hält dessen strenge Sicherheitsstandards ein. Sicherheit ist einer der zentralsten Grundwerte von Django und damit auch von Wagtail. Die üblichsten Einfalltore wie Cross-Site-Scripting oder SQL-Injection werden von Django/Wagtail automatisch verhindert. In einem Wordpress-System sind Entwickler:innen für diese Absicherungen manuell verantwortlich.

Stabilität

Durch die angesprochenen Sicherheitsprobleme muss ein Wordpress-System regelmäßig aktualisiert werden. Dies führt häufig zu Kompatibilitätsproblemen mit installierten Plugins. Diese funktionieren oft nach einem Update nicht mehr und müssen deshalb deaktiviert werden, so dass Teile der Seite nicht ordnungsgemäß funktionieren.

Die Sicherheitsstandards in Django/Wagtail und die einheitliche Umsetzung von Erweiterungen, ermöglichen einen klaren Workflow bei Updates und damit eine ausgezeichnete Stabilität.

Performance

Aufgrund der fixen Struktur und der eingesetzten Plugin-Architektur in Wordpress, ist der Code einer ausgelieferten Seite oft unnötig aufgebläht. Beispielsweise werden häufig dieselben Front-End-Bibliotheken im Browser von verschiedenen Plugins mehrfach heruntergeladen. Was sich negativ auf die Ladezeit und somit auf die Usability und das Suchmaschinen-Ranking auswirkt.

Der leichtgewichtige Aufbau von mit Wagtail entwickelten Seiten wirkt sich positiv auf die Performance aus und ermöglicht zudem ein gezieltes Fine-Tuning dieser Aspekte. Optimierungen wie Caching oder Komprimierung werden vom Django-Framework standardmäßig mitgebracht und lassen sich unkompliziert implementieren.

Entwickler-Community

Die genannten Probleme, die Wordpress mit sich bringt, spiegeln sich auch in der Anzahl an guten, ausgebildeten Entwickler:innen wider. Im Laufe der Jahre hat Wordpress immer mehr den Ruf erlangt, einen besonders einfachen Einstieg in die Erstellung von Webseiten zu bieten. Qualität und Erfahrung stehen da nicht unbedingt im Vordergrund, sondern vielmehr die einfache Möglichkeit eine Webseite mit Hilfe von vorgefertigten Themes und Plugins zu kreieren, also ohne viel Erfahrung in der Web-Entwicklung. Es kann also schwierig sein, erfahrene Wordpress-Entwickler für komplexe Aufgaben zu finden. Hinzu kommt, dass Wordpress nicht gerade berühmt ist für seine Entwicklungsumgebung:

In einer Umfrage aus 2019 wurde Wordpress von Entwickler:innen zur “meist gefürchteten Entwicklungsumgebung” gewählt.

Wagtail basiert auf der am meisten wachsenden Programmiersprache Python, die für seine Klarheit und Produktivität bekannt ist. Durch die einheitlichen Strukturen und Standards in Django und Wagtail, können selbst Python-Entwickler:innen, die noch keine Berührung mit Wagtail hatten, schnell in die Entwicklung einsteigen.

Fazit

Die Wahl des Content Management Systems für Webprojekte ist kritisch und hat große Auswirkungen auf Bedienbarkeit, Wartbarkeit, Performance, Sicherheit und ganz allgemein auf die Zufriedenheit aller Beteiligten. Je größer der Funktionsumfang und die Komplexität des Projekts, desto stärker fallen diese Aspekte ins Gewicht. Es ist zwar durchaus möglich, ein solides CMS mit Wordpress zu bauen, aber doch unwahrscheinlicher. Zum Glück gibt es Alternativen :)

Für einen noch besseren Eindruck: Auf der Seite madewithwagtail.org findet sich eine Vielzahl an mit Wagtail umgesetzten Seiten.

< Zurück zur Startseite