drupal

Drush für Drupal 8 installieren... einfach und richtig!

Googled man nach Installationshinweisen für Drush um mit Drupal 8 zu arbeiten, stößt man auf einige Tutorials, die während der Drupal 8 Dev Zeiten entstanden sind. Die Zeiten liegen glücklicherweise hinter uns. Hier eine ultrakurze Anleitung, wie man die neuste Version von Drush ohne apt-get installiert, um schneller mit Drupal 8 voranzukommen.

Drupal .htaccess Rewrite Regeln für https und www

In der Drupal .htaccess Datei finden sich beispielhafte Regeln zum Erzwingen von www oder zum erzwungenen Weglassen von www in der Domain. Auf die Weise wird sichergestellt, dass unabhängig von der Schreibweise des Aufrufers immer dieselbe URL-Struktur vorgefunden wird. Auch Regeln zur Arbeit mit https finden sich dort. Was jedoch schmerzlich vermisst wird, ist eine Regel, die sowohl WWW als auch HTTPS erzwingt.

Drupal 8 ist da! So läuft die Installation...

Endlich ist es da, Version 8 des besten Content Management Systems der Welt. Die Änderungsankündigungen sind vielversprechend, doch es ist viel Zeit vergangen, seit im Oktober 2014 auf der DrupalCon Amsterdam die erste Alpha von Drupal 8 released wurde. Jetzt ist Version 8 da und bereit in Produktivumgebungen eingesetzt zu werden. Hier ein kleiner Leitfaden für die Installation:

Ein eigenes API Modul für Drupal schreiben

So schön es auch ist, Webanwendungen mit Drupal 7 zu entwickeln, gibt es trotzdem immer wieder Anwendungsfälle wo einfach ein paar Funktionen fehlen. Das liegt daran, dass ein Framework wie Drupal natürlich generische Methoden zur Verfügung stellen muss, um alle denkbaren Anwendungsfälle möglich zu machen. Oft gibt es für einen Entwickler aber aufgrund der Sache an der er Arbeit immer nur einen identischen Anwendungsfall den er immer und immer wieder ausführen muss. Was gäbe es da sinnvolleres zu tun, als ein eigenes API-Modul zu schreiben, in dem diese zahlreichen Befehle gebündelt und schneller nutzbar gemacht werden.

Drupal Daten als CSV exportieren (am Beispiel "Google Merchant Center Export für Drupal Commerce")

Wer seinen Drupal Commerce Shop an Google Merchant Center anbinden möchte, kann dafür einfach das bestehende Modul nutzen. Allerdings ist das Modul ziemlich fest an die vorgegebene Struktur und den Aufbau von Drupal Commerce gebunden.

Drupal Commerce: Afterbuy Shop Schnittstelle manuell einrichten und nutzen

Afterbuy ist eines dieser Tools, die man ernsthaft in Betracht ziehen sollte, auch wenns einem beim ersten Kontakt kalt den Rücken runterläuft. Denn kaum eine Anwendung ist so hässlich und grausam unintuitiv wie Afterbuy. Ich würde jetzt sagen das Preis-Leistungs-Verhältnis ist gut, aber wem es bei Leistung nicht nur auf Funktionen, sondern auch auf Bedienbarkeit ankommt, dem sei geraten weiterzusuchen. Da ich kürzlich in den zweifelhaften Genuss kam, die Afterbuy Schnittstelle in eine Drupal-Commerce-Instanz einzubauen, schreibe ich hier einen kleinen Leitfaden, wie's funktioniert.

Drupal 7 Datenbank-Abfragen mit EntityFieldQuery

Eine wertvolle Neuerung aus Drupal 7 ist die EntityFieldQuery API. Hiermit können programmatische Inhalts-Abfragen über jede definierte Entität getätigt werden. Wollte man in Drupal 6 programmatisch eine Datenbankabfrage über bestimmte CCK-Felder machen, empfahl es sich aus Kompatibilitätsgründen mit Views eine Abfrage zu erstellen, diesen dann im Code zu laden und auszuführen. So war sichergestellt, dass kein Update am CCK Modul oder Veränderungen an der Datenstruktur zu Kompatibilitätsproblemen mit dem eigenen db_query()-Call führten. EntityFieldQuery ist eine alternative und deutlich bessere Abstraktionsschicht für diesen Anwendungsfall, denn es ist eine Drupal 7 Core Funktionalität und kein Modul in dessen Abhängigkeit man sich begibt, es arbeitet für simple Calls deutlich performanter als Views und es kann extrem flexibel eingesetzt und sogar um eigene Methoden erweitert werden. Die Fähigkeiten und Performance dieser API gehen soweit, dass es zu einer Grundüberlegung gemacht werden sollte, ob man für eine Darstellung von Inhalt das Views Modul oder doch lieber ein eigenes Modul mit EntityFieldQuery nutzen sollte.

Drupal 7 Performance Optimierung

Performance Optimierung ist ein wichtiges Thema bei der Arbeit mit Drupal 7. Denn Drupal ist ein System, dass zum Installationszeitpunkt schnell ist, wie der Wind, aber sich mit wachsender Seitenkonfiguration nach und nach verlangsamt. Das hat zum einen mit der Tatsache zu tun, dass Drupal eine starke Bindung an seine Datenbank hat und die Abfragen bei jedem Page-Request bei unvorsichtiger Konfiguration schnell mal in den dreistelligen Bereich steigen können. Zum anderen liegt das auch an der modularen Architektur, denn bei jedem Bootstrap werden alle aktivierten Module inkl. ihrer Hooks und Konfigurationseinstellungen abgearbeitet und zusammengestellt. Der Segen des Einen wird zum Fluch des Anderen, denn verzichtet man auf Module, schränkt man genau die Vorteile von Drupal ein, die das CMS möglicherweise überhaupt erst zum System der Wahl gemacht haben. Aber natürlich gibt es Abhilfe und eine High Performance Seite auf Basis von Drupal ist mit ein paar Grundregeln und einigen Anpassungen möglich.

Seiten