am 24. März 2009
Nachdem ich mich seit einer Woche mehr oder weniger sehr intensiv erstmalig mit Drupal beschäftige, dachte ich, dass ich von Beginn an meine Erfahrungen, die ich im Laufe der Entwicklung meiner ersten Drupal 6 Applikation (einem Videoportal) mache, zu Papier bringe, um vielleicht dem einen oder anderen den Einstieg zu erleichtern.
Startschwierigkeiten
Grundsätzlich muss ich zu Drupal sagen, dass es meiner Meinung nach, trotz guter Dokumentation und Tutorials nicht wirklich einfach ist sich einzuarbeiten, da das System sehr mächtig und daher auch komplex ist.
War man bislang ein System wie Typo3 gewohnt, das alles andere als einfach zu bedienen ist, wird man sich nach der ersten Installation von Drupal wahrscheinlich fragen was das für ein System mit sage und schreibe ganzen vier Menüpunkten ist und ob es wirklich das verspricht was viele behaupten.
Man wird jedoch sehr schnell eines besseren belehrt, denn es denken scheinbar nicht alle CM-System Entwickler so sehr „Typo“ wie die Typo3 Entwickler selber. Sorry für diesen Seitenhieb an Typo3, aber in meiner langjährigen Programmierlaufbahn ist mir noch nie ein solch unbenutzerfreundliches System untergekommen, wo man womöglich sogar Tutorials über das richtige Ausloggen aus dem System finden wird, weil der „Ausloggen“ Link in der zehnten Unterebene eines Hauptmenüpunkts versteckt ist.
So. Genug über Typo3 geschimpft. Es geht hier um Drupal.
PHP Einstellungen
Ich empfehle nach der Erstinstallation von Drupal sofort folgende Änderungen in der php.ini vorzunehmen, damit man später nicht mit leeren Seiten bei der Administration konfrontiert wird:
max_execution_time = 60;-120
memory_limit = 16M;-32M
Habt ihr keinen Zugriff auf die php.ini, dann könnt ihr diese Änderungen über .htaccess vornehmen.
Nachtrag: Womöglich kam das in meinem Beitrag nicht klar rüber, aber diese Änderungen sollten nur zu Testzwecken in diesem (übertriebenen) Ausmaß durchgeführt werden, deswegen habe ich jetzt diese Werte angepasst, um keine weiteren Diskussionen aufkommen zu lassen. Manche Module benötigen einfach mehr Memory, die Grundinstallation von Drupal funtioniert sehr wohl mit Memory Limit 8MByte. Das Problem sind die Module. Die Meisten Module, die ich bislang ausprobiert habe, funktionieren aber mit Memory Limit 16MByte und Execution Time 60, aber nicht alle, von daher habe ich vorgeschlagen diese Limits zu erhöhen. Falls manche Module nur mit einem sehr hohen Memory Limit funktionieren sollten, sollte man diese in Frage stellen bzw. sich mal den Code ansehen, denn Programmierfehler kann man nie ausschließen. Das Problem dabei liegt jedoch auf der Hand, denn man kann bei keinem gehosteten Webhostingpaket wirklich feststellen welches der installierten Module nun den Speicher frisst und zu debuggen hat dann auch nicht mehr viel Sinn, da man noch mehr Memory verbrauchen wird. Klar, das ist bestimmt ein Problem bei gehosteten Webspace.
Eine deutschsprachige Installation von Drupal 6 gibt es im drupalcenter.de zum Downloaden.
Module
Folgende Module empfehle ich sofort zu installieren (drupal.org) in den Ordner sites/all/modules (den Ordner modules muss man selbst anlegen):
admin_menu – Durch Zufall habe ich dieses Modul entdeckt und musste mich ärgern, weil ich es nicht schon früher entdeckt habe. Wie der Name schon sagt handelt es sich um ein Administrationsmenü. In Drupal gibt es selbstverständlich ein integriertes Admin-Menü, aber dieses erzeugt eine horizontale Navigationsleiste, über welche man mit wenigen Klicks dort hinkommt wo man hin möchte.
poormanscron – Im Hintergrund laufen bei Drupal immer eine Menge Cron Jobs zu allen möglichen Dingen (Updates, etc.) und damit diese gleich von Haus aus auf eurer lokalen Testinstallation funktionieren, ohne selbst etwas umstellen zu müssen, ist dieses Modul sicher hilfreich.
i18n – Hat man vor seine Seite mehrsprachig zu gestalten empfehle ich gleich von Beginn an das Modul Internationalization zu installieren, um sich spätere Probleme zu ersparen.
Mehrsprachigkeit
Wenn man nun bei den Einstellungen der Mehrsprachigkeit „Sprachpräfix mit Rückfallssprache“ wählt, sollte folgendes beachtet werden:
Wenn man nun zwischen den Sprachen herumswitcht, kann es, vor allem beim Erstellen von Menüpunkten, zu merkwürdigen Effekten kommen. 100%ig nachvollzogen habe ich das noch nicht, aber ich empfehle beim Erstellen von mehrsprachigen Menüpunkten in der Systemsprache zu bleiben, denn da ist mir noch kein ominöses Verhalten aufgefallen. Außerdem empfehle ich gerade bei der Erstellung der Menüs nicht auf die Primär- und Sekundärlinks zu setzen, sondern auf das Anlegen eigener Menüs, da man sich so einiges an Arbeit und Googeln zum Nachforschen von merkwürdigem Verhalten erspart.
Résumé
Alles in allem finde ich das System sehr gewöhnungsbedürftig, da das Backend im Grunde gleichzeitig das Frontend ist. Das bedeutet, dass man alle Administrationsoptionen nach dem Einloggen im Design des Frontends integriert hat. Das hat mich anfangs ziemlich irritiert und daher habe ich die Menüs für den Administrator so umgebaut, dass dies nicht mehr der Fall ist. Außerdem kann man unter Einstellungen/Verwaltungstheme ein eigenes Theme für das Backend einstellen. Grundsätzlich wäre dieser “Umbau” nicht notwendig, wenn man das Modul admin_menu verwendet, aber da es in meinem Portal mehrere Administratoren geben wird und ich diesen das admin_menu nicht freischalten möchte (ich bin in der Hinsicht womöglich ein wenig paranoid), nahm ich diese Änderungen vor.
“BuchuUNtipps”
Nun bin ich schon wieder am Ende meines kleinen Erfahrungsberichtes und möchte folgende Drupal 6 Lektüren NICHT empfehlen:
Drupal 6 von Data Becker: Oberflächlich, oberflächlich, oberflächlich. Sogar ein Redakteur wäre mit dieser Lektüre unterfordert.
Praxiswissen Drupal 6 von O‘Reilly: Ich habe das erste Buch vom O‘Reilly Verlag gefunden, das Mist ist. Das Niveau des Buches ist ungefähr auf „Wie installiere ich ein Modul richtig“.
Folgende Lern-DVD empfehle ich:
Ich habe zuvor noch nie eine Lern-DVD gekauft, da ich dies immer mit einem Hörbuch in Verbindung gebracht habe und von Hörbüchern nicht viel halte. Nachdem ich jedoch nur positives zu dieser DVD im Internet gelesen habe, habe ich zugeschlagen. Es gibt dazu ein gleichnamiges Buch, das von den Käufern eher nicht empfohlen wird. Hagen Graf erstellt mit dem Zuschauer eine kleine Drupal 6 Webseite, die man sich auch im Internet ansehen kann. Außerdem kann man das dazugehörige Buch online im Internet durchlesen.
Hagen Graf, Drupal 6 von Addison Wesley
Im Moment lese ich mich in zwei weitere Bücher ein, die die Modulentwicklung behandeln. Mehr dazu vielleicht schon bald
Anmerkung: Ich weiß nicht, ob es wirklich stimmt, aber in einem Buch habe ich gelesen, dass die Domain drop.org vom Hauptentwickler von Drupal quasi zu vergeben wäre, wenn man eine gute Idee dafür hat. Der Grund dafür ist, dass man sich damals bei der Registrierung geirrt hat und anstatt von Dorp eben Drop registriert hat und danach war dorp.org nicht mehr frei und dann entstand eben eine Ableitung daraus: Drupal. (Dorp bedeutet Dorf in irgendeiner Sprache).