Drupal

Steckbrief

Programmiersprache: 

PHP

Erstmals veröffentlicht: 

2001

Open Source seit: 

2001

Lizenz: 

Aktuelle Major Release: 

9

Registrierte User: 

> 1 380 000

Entwickler/innen: 

> 50 000

Core-Contributors: 

~ 100

Anzahl Installationen: 

> 1 100 000

Verfügbare Sprachen: 

65
Letzte Aktualisierung: 2020/08

Dank einer äußerst aktiven Entwicklergemeinde ist Drupal heute eher ein Web-Application-Framework als ein Content-Management-System im herkömmlichen Sinn. Es eignet sich für unterschiedlichste Individualanforderungen, und überzeugt mit Flexibilität, Skalierbarkeit, Barrierefreiheit und modernsten Webtechnologien. Im weltweiten Vergleich beim Einsatz von CMS liegt Drupal auf dem dritten Platz.

Weniger ist mehr

Was Drupal wohl am stärksten von anderen Content-Management-Sytemen unterscheidet, ist die Reduktion des Kernsystems auf das Wesentliche. In einer Standardinstallation findet sich nur eine Handvoll Module, die z. B. die Suchfunktion oder RSS-Feeds bereitstellen. Auch diese müssen zum Teil erst aktiviert werden. An den Kernfunktionen erkennt man auch am besten, wo das System seine Wurzeln und gleichzeitig seine Stärke hat: beim „User-generated Content“. Kein Wunder also, dass Unternehmen wie Twitter und Pinterest Drupal einsetzen.

Ausgehend von der Erfahrung, dass jedes Webprojekt etwas anders ist und dass auch Systeme mit einer Vielzahl von Standardfunktionen nicht „out of the box“ alle Anforderungen bedienen, geht Drupal konsequent den umgekehrten Weg: maximal reduziert. Alle gewünschten Funktionen werden modular installiert. Ein geflügeltes Wort der Community lautet: „Dafür gibt‘s doch ein Modul.“ Und das stimmt: unter tausenden gut dokumentierten Modulen findet man für nahezu jede Spezialanforderung eine einsatzbereite Lösung. Hier zeigt sich die Stärke von Open Source in besonderem Maße: Individualentwicklungen werden bereitwillig über die zentrale Plattform drupal.org kostenlos zur Verfügung gestellt und kontinuierlich verbessert.

Wer sich das Zusammensuchen von Modulen ersparen möchte, kann auch mit einem der rd. 140 Installationsprofile (Distributionen) beginnen, die – ebenso kostenlos wie ihre Komponenten – auf typische Anwendungsfälle maßgeschneiderte Lösungen anbieten, beispielsweise für Behörden, Verlage oder Online-Shops.

Durch den Ansatz, nur das zu installieren, was benötigt wird, profitiert Drupal von vier entscheidenden Vorteilen. Erstens Performancegewinn: Die schlanke Installation verbraucht wenig Ressourcen, während Administration und Redaktion nur die Funktionen sehen, die auch im Einsatz sind. Zweitens Übersichtlichkeit: Administration und Redaktion sehen nur die Funktionen und Bedienelemente, die tatsächlich eingesetzt werden. Drittens fällt auch nur für die benötigten Funktionen Wartungsaufwand an, während das System robust und wenig angreifbar ist. Und viertens: das System wächst mit, wenn die Anforderungen komplexer werden.

Amnesty International kämpft mit Drupal für eine bessere Welt

Umdenken und Querdenken

Auch das Bedienkonzept ist anders als das vieler CMS. Drupal unterscheidet nicht zwischen „Frontend“ und „Backend“: Über das fein granulierte Rollen- und Rechtemanagement wird abgefragt, welche Berechtigungen anonyme oder eingeloggte Benutzer*innen haben, dann werden die entsprechenden Links/Menüs bereitgestellt. Berechtigungen werden administrativ entsprechend den Anforderungen gesetzt, so dass sich das System dem Einsatzzweck anpasst, nicht umgekehrt. Typische Redaktionsansichten erscheinen in einer Standardinstallation in einem eigenen Design (Theme), auf Wunsch kann das Aussehen mit einem Klick aber vollständig auf das „Frontend“-Erscheinungsbild angepasst werden.

Um einen Inhalt zu bearbeiten, navigiert eine Redakteurin auf die entsprechende Inhaltsseite, auf der (unter Berücksichtigung der eingestellten Berechtigungen) alle benötigten Funktionen zur Verfügung stehen (z. B. Bearbeiten oder Letzte Version wieder herstellen).

Wer von anderen Systemen die Organisation der Inhalte in einer Baumstruktur kennt, wird sich in Drupal neu orientieren müssen. Das System „denkt“ nicht in Hierarchien, sondern eher in Wiederverwendbarkeit. Nichtsdestotrotz kann jeder Inhalt einen eigenen Menüpunkt erhalten (oder mehrere). Dieser wird aber erst in dem Moment angelegt, in dem der Inhalt erstellt wird. Wer allerdings lieber einen Menübaum haben möchte, sei beruhigt: „Dafür gibt‘s doch ein Modul.“

Startseite Duden.de
Drupal kann Deutsch: www.duden.de

Freiheit und Flexibilität

Das System geht grundsätzlich davon aus, dass Inhalte an mehreren Stellen auftauchen können. Die Eingabemasken für den Textkörper sehen die Eingabe einer Zusammenfassung vor, die standardmäßig für den Teaser auf Übersichtsseiten verwendet wird. In einer Grundinstallation erstellt Drupal chronologische oder stichwortbasierte Übersichtsseiten. Zusammenstellungen nach beliebigen anderen Kriterien lassen sich über Module realisieren.

Ein Kernstück des Systems ist die Taxonomie (Verschlagwortung). Begriffe innerhalb von (einfachen oder hierarchischen) Vokabularen können mit beliebigen Inhaltstypen verbunden werden und ermöglichen so verschiedene gefilterte (Über-)Sichten auf die Inhalte – oder auch auf die User. Inhaltstypen können selbst nach Belieben definiert werden, wobei die Felder für die Eingabemasken einfach ausgewählt werden.

Ein Beispiel: Es wird ein Inhaltstyp „Publikation“ angelegt mit den Feldern Titel, Untertitel, Verfasser, Verlag, Erscheinungsjahr, Inhaltsangabe, Publikationstyp. Das Feld „Verlag“ wird nicht als Freitextfeld angelegt, sondern als Referenz auf den Inhaltstyp „Verlagsprofil“, in dem weitere Informationen einschließlich Logo gepflegt werden. Der Weg zu einer Publikation kann nun über verschiedene Übersichtsseiten erfolgen: Alle Titel vom V-Verlag, Publikationen aus dem Jahr 2010, alle Beiträge von Mirja Musterling, neueste Publikationen vom Typ Fachartikel. Für die Steuerung der Zusammenstellungen können auch verborgene Felder angelegt werden.

Hierfür kommt Views zum Einsatz eins der beliebtetsten Core-Module. Es ermöglicht das individuelle „Zusammenklicken von Datenbankabfragen“ wie beispielsweise die oben beschriebenen. Hiermit werden auch Bausteine wie z. B. „verwandter Inhalt“ individuell zusammengestellt, gefiltert und priorisiert.

Hinzu kommen Feinheiten wie das Ausweisen einer Übersicht als „Archiv“ in Abhängigkeit vom Erstellungszeitpunkt - oder aber das Bereitstellen individueller Filterfunktionen, mit denen die Seitenbesucher*innen selbst steuern können, nach welchen Kriterien sie die Inhalte zusammengestellt bekommen möchten.

Startseite KiTa-NRW
Kooperierende Agenturen haben deGov entwickelt, eine deutschsprachige Drupal-E-Government-Distribution

Hallo Welt!

Eine große Stärke von Drupal ist die internationale Verbreitung. Für die Mehrsprachigkeit werden seit Drupal 8 keine Zusatzmodule mehr benötigt, 181 Sprachen sind direkt installierbar, und Drupal schmückt sich gern damit, dass es mit 228 Nationen mehr Länder anerkennt als die internationale Staatengemeinschaft.

Da, wie gesagt, zwischen Frontend und Backend nicht unterschieden wird, ist mit jeder Sprache gleichzeitig auch die Übersetzung der Redaktionsoberfläche vorhanden. So kann z. B. jede/r in einem internationalen Redaktionsteam parallel in der eigenen Muttersprache arbeiten.

Alle, die mit Drupal arbeiten, können über die zentrale Übersetzungsplattform an der Verbesserung der Übersetzungen mitarbeiten und den aktuellen Stand auch wieder in ihre Installation einbeziehen.

Einsatz und Verbreitung

In den seltensten Fällen wird Drupal genutzt, um statisch angelegte Seiten auszuliefern (obwohl es dazu ohne Weiteres in der Lage ist). Zumeist sind es hochdynamische Plattformen, die auf User-generated Content ausgerichtet sind oder Websites von Regierungen und Verwaltungen, die den Schritt in Richtung Bürgerbeteiligung machen, ferner Medienhäuser, Nichtregierungsorganisationen oder Universitäten.

Diese Stärke zeigt das System bereits in seiner eigenen Infrastruktur: im Unterschied zu einigen anderen Systemen wird auf drupal.org kein systemfremdes Forum oder Ticketsystem eingesetzt, sondern eine mit Bordmitteln erstellte bedarfsangepasste Lösung.

Gruppenfoto DrupalCon Wien 2017
Die Drupal-Konferenz DrupalCon (hier Wien 2017) zählt 2-3mal jährlich mehrere tausend Teilnehmer/innen. (Photo: CC BY-SA 2.0 Dominik Kiss)

Die besondere Community

Augenfällig bei der Auseinandersetzung mit Drupal ist die ausgesprochen kontaktfreudige Community: Neben den großen internationalen Konferenzen (die DrupalCon findet zweimal jährlich in Nordamerika und Europa statt) sowie regionalen und überregionalen Camps (kleinere Konferenzen) oder Contribution-Events (auf einen Themenkomplex konzentrierte „Arbeitstreffen“) gibt es in den meisten größeren Städten weltweit User-Groups (mit Fokus auf Kurzvorträgen und Erfahrungsaustausch) sowie Stammtische.

Bemerkenswert ist die Initiative der europäischen Drupal-Community: Als die Drupal Association die DrupalCon Europe 2018 wegen einer Umstrukturierung absagte, organisierte die Gemeinschaft aus eigener Kraft mit viel fast ausschließlich ehrenamtlichem Engagement eine Ersatzkonferenz mit immerhin rd. 1.000 Teilnehmer*innen.

Die Erkenntnis, dass gegenseitige Weiterbildung und Unterstützung der beste Weg ist, um Open-Source-Projekte insgesamt voranzubringen, hat auch eine Kultur von Screencasts und vielfältigen gut „bespielten“ Foren befördert. Sehr hilfsbereite Experten und Spezialistinnen sind ständig auf den gängigen Diskussions- und Social-Media-Plattformen anzutreffen.

Technologie

Drupal ist größtenteils in PHP geschrieben. Dank des Datenbankabstraktionslayers kann es mit den üblichen Datenbanken wie MySQL, Postgre-SQL und SQLite verwendet werden. Zusatzmodule ermöglichen auch die Anbindung an z. B. MS-SQL und Oracle. Für komfortablere Suchfunktionen wird serverseitig gern Apache Solr oder Elastic Search verwendet. Natürlich gibt es auch hierfür Module.

Laptop und Smartphone mit Drupal-Backend
Responsives, barrierearmes, individuell anpassbares Backend

Die im November 2015 veröffentlichte Version 8 integriert wesentliche Bestandteile des Symfony-2-Frameworks. Das brachte große Erleichterungen im Konfigurationsmanagement mit sich (Stichwort: Continuous Integration). Mit dieser Version wurde auch auf semantische Versionierung umgestellt.

Die Abhängigkeit von Symfony hat allerdings auch Einfluss auf die "Lebenszeit" einer Hauptversion. Der Wechsel auf die aktuelle Major Release Drupal 9, veröffentlich im Juni 2020, wurde allerdings in Drupal 8 bereits vorbereitet. Das Core-Team hat sein Versprechen gehalten: Das Upgrade von Drupal 8 auf 9 war nicht aufwändiger als bei einem Minor-Release-Update. Die Versionen 7 und 8 erhalten noch bis November 2022 Sicherheitsupdates.