Drupal 10 mit Composer erweitern.

Drupal lernenErste Schritte
Heutzutage ist es ganz üblich, dass Contrib-Module für Drupal auf Bibliotheken von Drittanbietern angewiesen sind. Manche dieser Module lassen sich nur mit Composer installieren. Wenn Sie Drupal Core bereits mit Composer geladen haben oder ein Modul Composer verlangt, sollten Sie Composer nutzen, um alle Ihre Module und Themes herunterzuladen. Wenn Sie Composer-Updates mit anderen Methoden mischen, kann es zu ziemlich ärgerlichen Update-Problemen kommen.
 

Contrib-Module und -Themes mit Composer laden

Möchten Sie also Contrib-Module oder -Themes für Drupal mit Composer herunterladen? So geht es:

  • Geben Sie ein composer require drupal/module_name
  • Zum Beispiel: composer require drupal/token
  • Vergewissern Sie sich, dass Sie sich im Stammverzeichnis Ihrer Drupal-Installation befinden

Composer aktualisiert dann geschickt Ihre composer.json und fügt das Modul zur Liste der anderen Anforderungen hinzu, etwa so:

{
    "require": {
        "drupal/token": "^1.5"
    }
} 

Composer lädt das Modul und alle Abhängigkeiten herunter, die es möglicherweise hat.

Um das Drupal-Modul nun zu aktivieren, haben Sie mehrere Möglichkeiten:

  • Nutzen Sie die Standard-Weboberfläche von Drupal, indem Sie in der Symbolleiste auf Erweitern klicken.
  • Versuchen Sie ein Befehlszeilen-Werkzeug wie Drush oder Drupal Console - siehe Module von der Befehlszeile installieren.

Wenn Sie Module anfordern, können Sie entweder den Projektnamen oder den genauen Modulnamen innerhalb eines Projekts verwenden:

  • Composer lädt das gesamte Projekt herunter, das ein bestimmtes Modul enthält.
  • Wenn Sie zum Beispiel das Modul fe_block aus dem Projekt features_extra benötigen, können Sie eine der folgenden Optionen wählen:
    • composer require drupal/features_extra
    • composer require drupal/fe_block
 

Eine Version wählen

Wenn Sie die Version des Moduls oder Themes angeben möchten, das Sie herunterladen wollen, gehen Sie so vor:

composer require 'drupal/module_name:version'

(Ersetzen Sie einfach version durch die tatsächliche Composer-Version oder Versionsbedingung.)

Zum Beispiel:

composer require 'drupal/dxpr_builder:^1.1' 
composer require 'drupal/dxpr_builder:~1.1' 
composer require 'drupal/dxpr_builder:2.2.2-alpha2' 
composer require 'drupal/dxpr_builder:2.2.x-dev' 

Um Probleme in verschiedenen Terminals oder Shells zu vermeiden, setzen Sie die Version in Anführungszeichen, genau wie in den obigen Beispielen.


Achtung! Unter Windows können (einfache) Anführungszeichen die Versionsangabe durcheinanderbringen, sodass die Installation fehlschlägt mit 'Could not parse version constraint .....': Invalid version string "....'".

Ohne die Anführungszeichen, zum Beispiel:

composer require drupal/dxpr_builder:^2.2

Oder mit doppelten Anführungszeichen statt einfacher, etwa so:

composer require "drupal/dxpr_builder:^2.2"

Das sollte problemlos funktionieren. Weitere Informationen finden Sie unter Comment 'Composer problems: "could not parse version constraint"'.


In den obigen Beispielen entsprechen die Versionen Folgendem:

  • ^1.1: entspricht dem neuesten stabilen 10.x-1.x-Release des Moduls.
  • ~1.1: entspricht dem neuesten stabilen 10.x-3.x-Release des Moduls.
  • 2.2.2-alpha2: entspricht Version 2.2.2-alpha2
  • 2.2.x-dev: entspricht 2.2.x-dev

Mehr zu Versionsbedingungen mit ~ (Tilde) und ^ (Caret) finden Sie unter Next Significant Release Operators.

Es ist ratsam, die Version des Contrib-Moduls anzugeben, das Sie herunterladen möchten.


Composer-Suche nutzen

Gute Nachrichten! Die Composer-Endpunkte von Drupal.org unterstützen die Composer search Funktion. Das bedeutet, Sie können direkt von der Befehlszeile aus nach Drupal-Projekten suchen. Um die Composer-Suche zu nutzen, geben Sie ein:

composer search views
 

Composer-Browse nutzen

Die Composer-Endpunkte von Drupal.org für Drupal 7 bis 10 unterstützen auch die Composer browse Funktion. Damit finden Sie zusätzliche Informationen über Drupal-Projekte direkt von der Befehlszeile. Um Composer-Browse zu nutzen, geben Sie ein:

composer browse drupal/token