cms
Endlich ist es soweit. Drupal 7 ist seit heute in seiner ersten offiziellen Version da. Vor ca. 1 Jahr kam die erste Alpha Version heraus. Jetzt hat das vermutlich flexibelste und umfangreichste aller Open Source Content Management Systeme es geschafft: http://drupal.org/project/drupal
Das Enterprise CMS Liferay Portal bietet einen starken Satz an Funktionalitäten und lässt sich auf vielfältige Weise an die eigenen Bedürfnisse anpassen. In Sachen Dokumentation und Support sieht es allerdings sehr mau aus. Vor allem in deutscher Sprache findet sich kaum etwas. Dabei ist das wirklich schade, denn das System verdient weitaus mehr Popularität, als es derzeit hat.
Alle Entwickler, die mit Aptana arbeiten, haben vermutlich sehr früh die sogenannten Snippets kennengelernt. Auf der Seite timonweb.com findet sich ein Satz toller Drupal Snippets.
Die erste funktionierende Version eines SmartRunner Drupal Moduls ist fertig. Da der Feed, der von SmartRunner zur Verfügung gestellt wird, etwas chaotisch ist, habe ich mit Hilfe des Aggregator-Moduls und Views Formatted Field ein kleines Modul geschrieben, das den Feed ausliest und auf einer eigenen Seite jeweils den Titel und die Streckenkarte anzeigt. Wie immer gibts noch viele Probleme (vor allem mit der Sortierung beim ersten Import), aber funktionieren tut es schon mal. Datei findet ihr im Anhang.
Wie man ein Formular erstellt und wie man dieses dann gestalten kann, war bereits Thema vergangener Artikel. Die Form API stellt aber noch weitere nützliche Funktionen zur Verfügung. Eine davon nennt sich hook_form_alter und kann dafür genutzt werden Tabellen vor ihrem Rendering zu verändern. Das kann nützlich sein, wenn man zwei Module geschrieben hat, wovon Modul A ein Formular bereitstellt und Modul B - wenn aktiviert - dieses Formular verändern oder erweitern soll. Hier ein Beispiel...
Oft kommt man bei der Programmierung von Modulen nicht darum herum, Veränderungen in der Datenbank vorzunehmen. Sei es um Platz für Benutzereingaben zu schaffen, oder um Tabellen zu erstellen die Verbindungen zwischen anderen Inhalten herstellen sollen. Da man es dem Anwender eines Moduls nicht zumuten kann, alle notwendigen Tabellen per Hand zu erstellen, kann man einem Modul eine Installationsdatei hinzufügen, die diese Arbeit übernimmt.
Was wir zuerst brauchen ist ein Taxonomie-Vokabular, in dem unsere Tags gespeichert werden können. Also einfach eins anlegen unter admin/content/taxonomy. Name, Beschreibung, Inhaltstypen sind alle egal. Stellt es so ein, wie ihr es braucht. Unter Einstellungen macht einen Haken bei Tags und Mehrfachauswahl und lasst Erforderlich frei. Wir wollen den Benutzer ja nicht zwingen etwas einzugeben, sondern wollen automatisch Tags hinzufügen, wenn er es nicht tun will oder vergisst.
Drupal basiert auf einem System von sogenannten Hooks. Grob erklärt stellen Module Hooks zur Verfügung, damit sich andere Module dort einhaken können um die Geschehnisse zu beeinflussen.
Seitdem das Weiße Haus auf das Content Management System Drupal umgestiegen ist, haben Drupal Entwickler keine Probleme mehr, potentielle Kunden von "ihrem" CMS zu überzeugen. Dabei gibt es noch eine ganze Menge anderer bekannter und berühmter Beispiele von Firmen, die sich Drupal für ihre Webseiten zu nutze machen. Der Drupal Entwickler Dries Buytaert führt eine Liste.
Das Community Content Management System Drupal 7 geht mit der Version Alpha 1 in die siebte Runde. Ein kurzer Überblick über die neuen Funktionen.

