Articles

Wie Sie Ihre Drupal 8 Installation (wieder) zum Laufen bringen.


Grundlagen
In Drupal 8 sind saubere URLs standardmäßig aktiviert und können nicht deaktiviert werden. Allerdings muss das Rewrite-Modul auf Ihrem Webserver installiert sein.
Überprüfen Sie die Adresszeile Ihres Browsers. Die URLs Ihrer Seite sollten kein ?q=
in der URL enthalten.
Beispiel für korrekte „saubere URLs“
http://www.example.com/node/83
Beispiel für „saubere URLs“, die nicht funktionieren
http://www.example.com/?q=node/83


Dieses Handbuch enthält Tutorials und weitere Informationen, die für die Erstellung von Modulen für Drupal 8 erforderlich sind.
Weitere Quellen:


Drupal 8 verwendet eine Reihe fortgeschrittener PHP-Sprachfunktionen und komplexer externer Bibliotheken, um Drittentwicklern die fortschrittlichste API aller verfügbaren CMS bereitzustellen. Obwohl erfahrene Drupal 7 Entwickler einige bedeutende Änderungen bemerken werden, bleibt der Großteil der Grundstruktur vertraut.


In den folgenden Unterabschnitten dieses Tutorials werden wir Beispiele für verschiedene Teile einer Drupal-Website erstellen, wie eine benutzerdefinierte Seite, einen Block, eine Entität, ein Feld usw. Alle Beispiele beginnen mit dem Modulordner und einer .info.yml-Datei. Mit nur diesen beiden Dateien wird das Modul auf der Erweiterungs-Administrationsseite von Drupal 8 angezeigt oder kann direkt mit Drush aktiviert werden.


Bevor Sie beginnen
Wenn Sie möchten, dass PHP Ihnen hilft, Fehler auf Ihrer Testseite zu erkennen, probieren Sie die hier beschriebenen Einstellungen aus: Alle Fehler während der Entwicklung anzeigen.
Nennen Sie Ihr Modul
Der erste Schritt bei der Erstellung eines Moduls ist, einen „kurzen Namen“ oder Maschinenname dafür zu wählen. Dieser Maschinenname wird in mehreren Dateien und Funktionen Ihres Moduls verwendet, und der Drupal-Kern nutzt ihn programmatisch, um Ihr Modul zu identifizieren.


Hauptthema: Metadaten des Projekts
Die Datei .info.yml (auch „Info YAML-Datei“ genannt) ist ein wichtiger Bestandteil eines Moduls, Themes oder Installationsprofils in Drupal 8 zur Speicherung von Metadaten über das Projekt.
Diese .info.yml-Dateien sind erforderlich, um:


Bei der Entwicklung von benutzerdefinierten Modulen gibt es mehrere Szenarien, in denen vom Entwickler erwartet wird, eine Datei composer.json in sein Modul einzufügen. Einige dieser Szenarien hängen davon ab, ob das benutzerdefinierte Modul als Projekt auf drupal.org an die Community weitergegeben werden soll.
Wenn der Modulentwickler eine PHP-Bibliothek verwenden möchte, die auf packagist.org gehostet wird, muss er eine composer.json-Datei in sein Projekt einfügen.


Im folgenden Abschnitt werden wir die Erstellung eines einfachen Moduls behandeln. Es gibt eine lange Tradition, dass das erste Programm, das Sie in einem neuen System schreiben, „Hello World!“ auf dem Bildschirm ausgibt.
Obwohl Drupal eines der mutigsten und fortschrittlichsten Open-Source-Projekte ist, ist es auch tief in den langjährigen Traditionen von Wissenschaft und Technik verwurzelt.


Die Funktion content() in der Klasse HelloController gibt den Markup-Text zurück, wenn das Routing-System die Seite aufruft.
In dem Ordner Ihres Moduls sollte die standardmäßige PSR-4-Ordnerstruktur /src/Controller vorhanden sein, und innerhalb dieses Ordners sollte sich die Controller-Datei HelloController.php befinden.
Somit sieht Ihre Controller-Datei folgendermaßen aus:
/src/Controller/HelloController.php
Sie haben den folgenden Code in der Datei HelloController.php:
