Benennungs- und Platzierungsregeln für Ihr Drupal 8 Modul
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.
Es gibt einige wichtige Regeln, die Sie bei der Wahl des Maschinennamens beachten müssen:
- Er muss mit einem Buchstaben beginnen.
- Er darf nur Kleinbuchstaben und Unterstriche enthalten.
- Er darf keine Leerzeichen enthalten.
- Er muss eindeutig sein. Ihr Modul darf keinen Maschinennamen haben, der mit einem anderen Modul, Theme oder Installationsprofil auf Ihrer Seite identisch ist.
- Es dürfen keine reservierten Begriffe verwendet werden:
src
,lib
,vendor
,assets
,css
,files
,images
,js
,misc
,templates
,includes
,fixtures
,Drupal
In diesem Beispiel wählen wir „hello_world“ als Maschinennamen.
Wichtiger Hinweis: Verwenden Sie keine Großbuchstaben im Maschinennamen Ihres Moduls, da Drupal Ihre Hook-Implementierungen sonst nicht erkennt. Siehe Das Verständnis des Hook-Systems in Drupal-Modulen.
Erstellen Sie einen Ordner für Ihr Modul
Da wir den Maschinennamen „hello_world“ gewählt haben, legen Sie Ihr Modul an, indem Sie im Drupal-Verzeichnis den Ordner /modules/custom/hello_world oder /sites/all/modules/hello_world erstellen. Sie können /custom/ weglassen und Ihr Modul direkt in /modules/hello_world ablegen, aber es ist oft praktisch, einen eigenen Bereich für eigene Module zu haben, damit Sie sie leichter von anderen, von drupal.org geladenen Modulen unterscheiden können.
Beachten Sie, dass der Ordnername Ihres Moduls nicht mit dem Maschinennamen identisch sein muss. Sie könnten stattdessen z. B. „HelloWorld“ als Ordnernamen verwenden. Sie müssen jedoch den Maschinennamen programmatisch im Code und bei Dateinamen Ihres Moduls verwenden.
Frühere Drupal-Versionen verlangten, dass benutzerdefinierte Module in /sites/all/modules liegen, während Kernmodule in /modules waren. In Drupal 8 ist /modules jetzt für eigene und Contrib-Module reserviert. Alle Kernmodule und Bibliotheksdateien befinden sich im Verzeichnis /core. In Drupal 8 können Sie noch die bewährten Praktiken aus Drupal 7/6 verwenden, Ihre eigenen und auf drupal.org veröffentlichte (Contrib-)Module in /sites/all/modules abzulegen, oder Sie legen sie einfach in /modules ab – das hat denselben Effekt.
Unser Beispielmodul funktioniert noch nicht; zuerst benötigen wir eine .info.yml-Datei. Erfahren Sie mehr darüber, wie Sie Drupal 8 mit einer .info.yml-Datei über Ihr Modul informieren. Das Modul aktivieren wir später im Tutorial.
Coding-Standards
Wir empfehlen dringend, die Drupal-Coding-Standards einzuhalten, wenn Sie eigene Module schreiben. Dies ist eine Voraussetzung für alle Core-Patch-Vorschläge und eine Empfehlung für veröffentlichten Code auf drupal.org.
Siehe auch
Drupal’s online documentation is © 2000-2020 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution-ShareAlike 2.0. PHP code is distributed under the GNU General Public License.