Composer

Composer ist ein Dependency Manager für PHP – er verwaltet externe Bibliotheken und Pakete, auf die ein Projekt angewiesen ist. In der WordPress-Entwicklung wird Composer eingesetzt, um Plugins, Themes und PHP-Bibliotheken als Projektabhängigkeiten zu definieren und versioniert zu verwalten. Statt Plugins manuell herunterzuladen, stehen sie in einer zentralen Konfigurationsdatei und können mit einem Befehl installiert werden.

Warum Composer in WordPress-Projekten?

  • Reproduzierbare Umgebungen – alle Entwickler arbeiten mit denselben Paketversionen
  • Versionskontrolle – composer.json und composer.lock können in Git eingecheckt werden, Plugins und Bibliotheken selbst nicht
  • Abhängigkeiten explizit deklariert statt manuell verwaltet
  • Automatisches Autoloading von PHP-Klassen

Die wichtigsten Dateien

  • composer.json – definiert alle Abhängigkeiten und Projekt-Metadaten
  • composer.lock – sperrt alle Pakete auf exakte Versionen, garantiert Reproduzierbarkeit
  • vendor/ – Verzeichnis mit allen installierten Paketen (nicht in Git einchecken)

WordPress und WPackagist

WordPress-Plugins und -Themes aus dem offiziellen Verzeichnis sind über WPackagist (wpackagist.org) als Composer-Pakete verfügbar. Das ermöglicht, öffentliche Plugins wie folgt zu installieren:

composer require wpackagist-plugin/contact-form-7

Composer und Bedrock

Bedrock ist ein modernes WordPress-Boilerplate von Roots, das Composer als zentrales Fundament nutzt. WordPress selbst wird dabei als Composer-Paket installiert, die gesamte Installation ist über composer.json definiert. Bedrock ist der Einstiegspunkt für professionelle, Composer-basierte WordPress-Entwicklung.