4 hilfreiche Tools für Ihr erstes Drupal 8-Projekt

30.09.2016 Jose Luis Bellido

Dies ist der letzte Artikel unserer dreiteiligen Blog-Serie, in der wir unsere Erfahrungen im Entwickeln mit Drupal 8 teilen, nachdem wir das erste Projekt mit der neuen Version des CMS realisiert haben. In den vorherigen Beiträgen wurden bereits Empfehlungen und Dokumentationsquellen vorgestellt, die es erleichtern sollen, Drupal 8 zu erlernen. In diesem Artikel werden wir uns Tools anschauen, die Entwicklern dabei helfen, Zeit zu sparen und gängige Fehler zu vermeiden. Los geht’s!

Drupal Console

Drupal Console interagiert mit Drupal 8 und verfügt über eine Befehlsleiste mit diversen Tools, um einen Boilerplate-Code zu generieren. Wenn man Drupal Console verwendet, merkt man sofort, wie schnell das Entwickeln geht! Es ist ganz einfach zu benutzen: Jeder Befehl ist angeleitet und hilft dabei, die richtigen Parameter für auszuführende Befehle zu setzen. Es stellt außerdem eine große Liste von Befehlen zur Verfügung, die im Arbeitsalltag mit Drupal sehr nützlich sein können. Einige Beispiele sind:

 

Weitere Funktionen und Vorteile von Drupal Console, die wir interessant finden:

  • Alles ist sehr gut dokumentiert.
  • Man kann eigene Drupal Console-Befehle erstellen, um seine benutzerdefinierten Plug-In-Implementierungen automatisch zu generieren. Das Metatag Modul zum Beispiel hat einen eigenen Drupal Console-Befehl, um eine neue Metatag Plug-In-Implementierung zu generieren.
  • Dank der Hauptbetreiber und allen anderen Mitwirkenden wird es ständig verbessert.

     

Außerdem ermöglicht Drupal Console nicht nur eine Zeitersparnis (was auch weniger Kosten bedeutet), sondern vermittelt auch ein Verständnis dafür, wie Komponenten, die man in Drupal erstellen kann, umgesetzt werden. Zum Beispiel: Wenn man ein neues Inhaltselement für ein Projekt erstellt, kann man den generierten Code überprüfen und sehen, wie er aufgebaut ist.

Meiner Meinung nach ist es unerlässlich, Drupal Console zu verwenden, wenn man an einem Drupal 8-Projekt arbeitet. Durch die Vermeidung von Tippfehlern und anderen häufigen Fehlerquellen wird Ihr Team beim Entwickeln von benutzerdefinierten Modulen definitiv Zeit sparen.

Join the community

Die Hauptbetreiber des Projekts machen einen tollen Job, Unterstützung wird aber immer gerne angenommen. Da wir eine Open Source Software benutzen, ist es unsere Pflicht als Entwickler, zur Software beizutragen und damit die Qualität zu verbessern. Als Drupal-Agentur war Cocomore bereits an tollen Projekten mit folgenden Funktionen beteiligt:

Auch dank des schnellen Feedbacks vonseiten der Betreiber und anderen Nutzer, war unsere Erfahrung mit dem Projekt sehr positiv. Profitieren Sie vom Lerneffekt und schauen Sie gleich selbst beim Projekt vorbei!

XDebug

Wenn Ihnen ein Drupal 8-Projekt bevorsteht, ist es unerlässlich, XDebug in der lokalen Umgebung zu nutzen. Xdebug ist eine Erweiterung von PHP und beinhaltet Debugging- und Profiling-Möglichkeiten. Es wird Ihnen dabei helfen, Ihren PHP Code Schritt für Schritt auszutesten und Fehler zu beheben. Somit erhält man zusätzliche Informationen bezüglich des Inhalts, des Verlaufs der Threads usw.

Sie werden damit die Möglichkeit haben herauszufinden, wo genau die Fehler in Ihrem Code liegen und können diese sehr viel schneller beheben als mit anderen Debugging-Verfahren. Die meisten IDEs, wie PHPStorm oder NetBeans, haben Erweiterungen, um XDebug zu nutzen, und bieten ein UI zur Fehlerbehebung an. Darüber hinaus gibt es mehrere Plug-Ins und Erweiterungen für die üblichen Browser, wie z.B. XDebug Helper für Chrome. Diese Plug-Ins oder Erweiterungen helfen dabei, die notwendige Konfiguration zur Fehlerbehebung für eine Seite im Browser festzulegen.

In diesem Blog-Beitrag werde ich nicht näher auf die Installation von XDebug eingehen. Wenn Sie PHPStorm nutzen, können Sie in der offiziellen Dokumentation von Jetbrains diesbezüglich einige hilfreiche Informationen finden.

Feinschliff an services.yml und settings.php Dateien

Das Debug Tool von Twig Engine ist ein weiteres Werkzeug, das beim Arbeiten mit Drupal 8 unverzichtbar ist. Seitdem Twig als neue Template Engine für Drupal 8 eingeführt wurde, können Nutzer es als Tool zur Fehlerbehebung verwenden. Die Drupal 8-Implementierung fügt folgende Informationen hinzu:

  • Welches Theme für die Darstellung der einzelnen Teile im Markup genutzt wird.
  • Welches Template verwendet wird.
  • Welche die verfügbaren Datei-Vorschläge sind.

Diese Information ist sehr hilfreich, da man dadurch z. B. weiß, welche Vorlage man überschreiben kann, um den Output in seinem Projekt individuell anzupassen. Dies war in vorherigen Versionen nicht möglich, da man sich merken musste, welche die richtige Struktur zum Überschreiben der Vorlage war, die angepasst werden musste. Es gibt noch weitere Entwicklungskonfigurationen, die für Sie interessant sein könnten, wie z. B. das Debugging bei zusammengesetzten Templates.

Wie kann ich meine Templates debuggen?

Twig stellt einige Debugging-Funktionen zur Verfügung, wie z.B. dump(), das den Wert der vorgegebenen Variable herausgibt. Falls Sie es bevorzugen, XDebug innerhalb des Twig Templates zu nutzen, können Sie das Twig XDebug Modul verwenden. Es stellt einen neuen Breakpoint() für die Zweigfunktion zur Verfügung, gemäß der Modulbeschreibung:

The breakpoint will open in a file (BreakpointExtension.php) outside your Twig template, but you'll be able to inspect any variables available at the breakpoint in the template.

So haben Sie wieder die Kontrolle über Ihre Vorlagen!

Web Profiler

Falls Sie in vorherigen Versionen von Drupal den Web Profiler genutzt haben, ist es wichtig zu wissen, dass dieser in Drupal 8 als Sub-Modul mit dem Devel-Modul zusammengeführt wurde. Der Web Profiler ist eine Bündelung der Symfony Console für Drupal 8. Er ermöglicht mit einer Toolbar ganz unten auf der Seite, dass Admins wichtige Informationen zum Profilieren der Webseite überprüfen können. Sie können z. B. die Aufrufe, Datenbankabfragen, Cache-Effektivität und noch vieles mehr untersuchen. Für uns war es teilweise hilfreich, die Datenbankabfragen zu prüfen und zu filtern, während eine bestimme Seite aufgerufen wurde.

Falls Sie mehr über die Funktionen des Moduls lernen möchten, empfehlen wir den Artikel Web Profiler in Drupal 8 von Joe Fender von Drupalize.me, in dem man eine detaillierte Liste mit den Funktionen in diesem Modul finden kann.

Mehr Drupal 8 Tipps

Wie bereits zu Beginn erwähnt, ist dieser Blog-Beitrag der dritte (und letzte) unserer Serie, in der wir über Empfehlungen und Tipps für Ihr erstes Drupal 8-Projekt berichtet haben. Wir hoffen, Sie haben genauso viel Spaß beim Entwickeln mit unserem Lieblings-CMS wie wir. Vielen Dank fürs Lesen und Teilen.