Wolfgang Sommergut hat einen ausführlichen Artikel zu drupal geschrieben: Vor- und Nachteile von Drupal als Weblog-System. (via Schockwellenreiter).

Hier ein paar Anmerkungen aus der Drupal-Praxis. Ich verwende drupal seit März drüben auf Skydance. (Skydance war eine Community-Seite und daher mit der ursprünglichen Intention von drupal sicher enger verwandt als die Idee, drupal für ein reines Weblog zu verwenden. Es gibt aber eine Sonder-Distribution von Drupal, die auf die Weblog-Funktionen spezialisiert ist: Drupal4Bloggers.)

Das “Major Update” auf 4.6 hat eine heftige Beziehungskrise zwischen mir und dem System ausgelöst. Ich liebe es immer noch, aber einige Dinge sind deutlich verbesserungswürdig. Die Tatsache, dass drupal die Sonderzeichen in der Datenbank unmaskiert speichert, hätte – wegen dadurch verschluckter Anführungszeichen – beinahe einen Daten-Supergau ausgelöst. Alle “Entwickler”-Module vor dem Update abzuschalten, dann einzeln upzudaten und mit den Veränderungen klarzukommen, ist ziemlich umständlich – auch wenn ich nicht wüsste, wie es besser gehen sollte, denn:

Der größte Vorteil von drupal ist gleichzeitig die größte Schwachstelle des Systems – die Modularität. Das Problem der drupal-Module ist, dass sie in der alleinigen Verantwortung der jeweiligen Entwickler liegen. Hat ein Entwickler gerade keine Lust, keine Zeit oder ist sonstwie verhindert – Pech, dann wird das Modul eben nicht an die neue Version angepasst. Wird es angepasst, heißt das noch lange nicht, dass es die gleichen Funktionen hat wie sein Vorgänger. Hast du ein Problem damit? Roll your own.

Das ist die Philosophie der Community, und das Erweitern und Anpassen des Systems wird, je nach Komponente und Eigeneinsatz, zu einer spielerischen Herausforderung oder zu einem nervtötenden Geduldspiel.

Was die Dokumentation anbelangt, die ja im drupal-eigenen “Buch”-format vorliegt: Die finde ich – im Vergleich zu anderen Open-Source-Projekten, mit denen ich mich herumschlagen musste – eigentlich sehr gelungen. Ein gedruckte Version wäre unsinnig, da sich das System in ständiger Entwicklung befindet – aktuelle .pdf-Versionen finden sich übrigens laufend auf PureGin.org.

Das Template-System, insbesondere wenn man die PHP Template Engine verwendet, ist nicht wirklich kompliziert oder schwer zu verstehen. Im Gegensatz zu dem Eindruck, den das Modul durch die Einleitung “A theme engine that allows you to use template files written in pure php.” erweckt, braucht man auch keineswegs php zu verstehen, um Templates zu erstellen – es reicht, Funktionen mit glasklaren Namen mit dem gewünschten HTML bzw CSS zu umgeben. Ich habe mich damit jedenfalls deutlich schneller angefreundet als mit dem Templating hier in der EE. Geschweige denn in Mambo *schauder*. Übrigens gibt es auch sehr hübsche fertige Templates.

Was ich an Drupal besonders mag:

  • Die Benutzerverwaltung Weitreichende Möglichkeiten zur Verwaltung von Usern und Usergruppen, übersichtlich und leicht konfigurierbar. Im Zusammenhang damit die leicht erweiterbaren User-Profile.
  • Die “Bücher” – eigentlich wollte ich mein Skydiving-Lexikon als “Wiki” realisieren. Nachdem ich allerdings dem Dritten nicht-Techie vergeblich das Prinzip und das absolut geniale an einem Wiki zu erklären versucht habe, kamen mir die “Bücher” gerade recht. Unter einem Buch kann sich jeder etwas vorstellen, Hemmschwelle fällt weg, niemand braucht eine neue Sprache zu lernen – ein perfektes Modul, wenn man versucht, mit netztechnisch wenig Erfahrenen Usern kollektives Wissen zusammenzutragen.
  • Das Frontpage-Puzzle – verwendet man verschiedene Module wie zum Beispiel Artikel, Forum, Blogs, Eventdatenbank, Bildergalerie etc, so lässt sich im Vorfeld konfigurieren, ob Elemente (Nodes) dieses Typs per default vorne angezeigt werden. User mit entsprechenden Rechten können das aber für jeden einzelnen (!) Node overriden. Schreibt jemand einen Beitrag ins Forum, der eine wichtige Nachricht enthält, kann ich den Forumbeitrag mit einem Klick vorne anzeigen lassen.
  • Die Navigations-“Blöcke”, die man für verschiedene Seiten verschieden konfigurieren kann – und zusätzlich noch pro Block (!) festlegen, ob die User ihn für sich selbst ein- bzw. ausblenden können.

Soweit fürs erste. Wird sicher irgendwann fortgesetzt (auch mit “was ich an drupal weniger mag”), aber momentan geht mir die Zeit aus.