Drupal Services

Mit Drupal lassen sich umfassende Seiten erstellen. Viele bekannte Unternehmen wie Greenpeace, MTV, Amnesty international, Nokia, etc. pp. nutzen das erfolgreiche CMS/CMF.


Individual Member of Drupal Association

In mittlerweile mehr als 3 Jahren konnte ich das System von Grund auf kennenlernen. Mit eigenen Modulen oder Weiterentwicklungen vorhandener Module bis hin zum Workshop war es mir möglich die Community und Partner mit individuellen Lösungen zu bereichern.

Gerade die Module Views und CCK bedarfen anfangs einer gewissen Übersicht, aber mit einem kleinen Blick in die Herzen der Module lässt sich auch dort nahezu jedes Problem lösen. (siehe Views Workshop).

Drupal - ein CMS und mehr

Drupal ist ein OpenSource ContentManagementSystem und Framework für fast jeden Bereich im Inter- und Intranet. So lässt sich damit ebenso eine große Community aufbauen, wie eine kleine Firmenseite oder nur ein simpler Blog zur persönlichen Freizeitgestaltung.

Durch die starke Community weltweit lässt sich auch für neue Konzepte schnell eine Lösung finden. Seit den Erfindung von Drupal durch Dries Buytaert gibt es die Software mittlerweile in Version 6. An der Version wird bereits ausgiebieg gearbeitet und soll zum Herbst dieses Jahres startbereit sein und mit neuen Kernfeatures aufwarten.

Jedoch bietet nicht nur der gutdurchdachte Kern ein breites Spektrum, vielmehr sind es die frei im Netz verfügbaren Module die sich das HookSystem von Drupal zu nutze machen und somit jede WebAnwendung auf vielfältige Weise bereichern.

Nähere Informationen zu Drupal kann man auf drupal.org (Englisch) und drupalcenter.de (Deutsch) erhalten.

Referenzen

Anbei sind ein paar Projekte aufgelistet, die ich selbst initiert habe oder bei denen ich aktiv an der Umsetzung beteiligt war.

enimages2_websnapr_com.jpg Zugspitzpokal.de
eine umfassende Seite zum Jugend-Kart-Slalom im Pfaffenwinkel. Mit Terminoranisation, zugeordneten Dokumenten, Fahrerverwaltung, Bildergalerien, Bildermarkierungen für die User, etc. pp.


hdr_0.pngHaus der Religionen
Artikelsystem mit Archiv
Terminkalender
Uploads und Bilder
Spezielles Design
Benutzerverwaltung
BJB OberbayernBayer. Jungbauernschaft Bezirk Oberbayern
Artikelsystem
Terminkalender
Bildergalerie mit Mehrfachupload
Interner Bereich
Benutzerverwaltung
Golf Charity Pool GermanyGolfCharityPool Germany
Newsbereich
Slideshow
Bilderupload
464ef80.png
Corps Saxonia Hannover
e2b408.png
LandjugendTag Bayern
(eingestellt)

ff8a80.png
AMC Peiting

DUG Hannover

DUG HannoverIn Hannover besteht seit etwa 2 Jahren, damals initiiert von eigentor und stBorchert eine Drupal User Group die sich mittlerweile monatlich trifft und sich zu vielen Themen rund um Drupal austauscht und weiterhilft. Natürlich kommt auch dabei der gesellschaftliche Teil nicht zu kurz.

Auf der Seite dug-hannover.org gibt es mehr Informationen zu den Treffen, aber auch zu anderen Themen im WorldWideWeb.

Entwicklung - Module & Co.

Durch den modularen Aufbau von Drupal lässt sich quasi jeder Anwendungsbereich programmieren, soweit es nicht schon eine Umsetzung unter den tausenden Modulen auf drupal.org/project/modules gibt.
Bei der Programmierung ist hierbei vor allem PHP gefragt. Jedoch wird auch in einigen Bereichen JavaScript und der Umgang mit AHAH/AJAX nötig. Im Theming-Bereich sind HTML und CSS natürlich unabdingbar.

Nachfolgend sind ein paar Module gelistet, die entweder zur Vorschau, als Entwicklungs- oder Testversion von mir gepostet wurden, oder bereits ihren Platz auf drupal.org als Projekt gefunden haben.

Meine offiziellen Projekte sind für angemeldete Nutzer von drupal.org unter drupal.org/project/user/83474 zu finden.

Zur Entwicklung von Modulen nutze ich zudem github.com/derhasi, wo u.a. ein experimenteller Ansatz für Annotations oder eine Statistik API zu finden ist.

CCK GMap Address (D5)

Das Modul CCK GMap Address ist ein contributed module auf http://drupal.org/project/cck_gmapaddress. Es stellt ein CCK-Feld zur Verfügung, dass mit einer einfachen einzeiligen Addresseingabe eine GoogleMap für den entsprechenden Inhalt erzeugt. Es wartet zudem mit einigen Einstellungsmöglichkeiten zur Anzeige (z.B. verschiedene Größen und Kartenarten in Views und Teaser) auf. Zudem ist ein Fetch-Modul integriert, das die Daten auch aus einem anderen Feld des gleichen Nodes holen kann, und somit bestehende Inhalte erweitert. Durch einen Generator können u.a. per Cron diese Daten nachholend erzeugt werden.

Zum Einsatz kommt das Modul z.B auf zugspitzpokal.de und danishdaughters.de.

Eine Portierung auf D6 wird nicht mehr offiziel geschehen, da mittlerweile Location und GMap mit eigenen CCK-Feldern aufwarten.

==> drupal.org/project/cck_gmapaddress

CCK NodeMenu (D5)

CCK NodeMenu ist ebenfalls auf drupal.org zu finden.

Es bietet die Möglichkeit zu jedem Node ein Individuelles Menü in einen Block zu packen, das mit gewissen Vorgaben vom User in ein Textfeld eingegeben oder von einem Computed Field generiert wird.

Wenn Interesse besteht, kann auch eine Portierung auf Drupal 6 erfolgen.

=> drupal.org/project/cck_nodemenu

CCK Validation (D5)

CCK Validation ist ebenfalls auf drupal.org zu finden. Es bietet dem Administrator seinem Inhaltstyp zusätzlich Felder zur Inhaltsvalidierung hinzuzufügen. U.a. mit eigenem PHP-Code lassen sich so bestehende Valdierungen erweitern oder neue Valdierungsmöglichkeiten erzeugen.

Das Modul ist offiziell für D5 geschrieben, scheint jedoch laut http://drupal.org/node/338266 auch mit einer abgeänderten .info für Drupal 6 zu laufen.
Eine Portierung auf D6 wird allerdings vorraussichtlich nicht geschehen.

==> http://drupal.org/project/cck_validation

Firep Hold (D6)

Der Nachfolger dieses Moduls ist mittlerweile als WatchBug auf drupal.org/project/watchbug zu finden!

Zur Entwicklung habe ich die letzten Wochen ein kleines eigenes Modul genutzt, das die Funktionalitäten von DrupalForFirebug und Devel aufgreift und erweitert.

Notwendig wurde dies, um Variablen zum Debugging abzugreifen, die in Prozessen generiert werden, die nicht Teil des Standardladeprozesses für eine Seitenansicht sind, z.B. AJAX-Anfragen oder HTTP-Requests.

Aus diesem Grund habe ich in Anlehnung an firep von DrupalForFirebug eine Funktion firep_hold geschrieben, die das benötigte Element zwischenspeichert. Über den VariablenEditor von Devel oder admin/firep_hold lässt sich diese Variable dann betrachten. Als Anzeige dienen hierbei das Devel-Object (wie in node/%/render) oder das FireBug Panel von DrupalForFirebug.

Zusätzliche Features:

  • Erweiterung des devel-Variableneditors mit der Devel-Object-Anzeige
  • Top Level Admin Menu Link zum schnellen Zugriff auf die Firep Hold Variable
  • firep_hold_clear() und Menülink zum leeren der aktuellen Variable
  • admin/firep_hold/% stellt auch alle anderen Variablen aus {variables} dar

Firep_hold

function firep_hold($element,$title=NULL)

  • $element - object, array, string, integer,... der als Variable zwischengespeichert werden soll
  • $title - Ist ein Title angegeben, wird nur der Schlüssel $title der Variablen durch $element ersetzt. Der Rest der Variablen bleibt bestehen.

Im Anhang gibt es eine aktuelle TestVersion, die auch den Drupal CodingStandards entsprechen sollte.

AnhangGröße
firep_hold.zip (Version vom 08.04.2009 - (2))9.13 KB

NodeRefAdd (D5)

noderefadd1_kl.jpgDiese kleine Modul stellt einen Block zur Verfügung, der es Usern ermöglicht zu fremden Inhalten NodeReferenzen hinzuzufügen. Im Einsatz ist das Modul auf zugspitzpokal.de, wo hierdurch berechtigten Besuchern ermöglicht wird Personen auf fremden Bildern zu verlinken.


Eine EntwicklungsVersion findet ihr im Anhang.

AnhangGröße
noderefadd.zip1.76 KB