-

Drupal 8, 9 oder 10 auf Drupal 11 aktualisieren

Ein Drupal 11 Upgrade ist der nächste große Schritt für viele Websites, die noch auf Drupal 8, 9 oder 10 laufen. Der Sicherheitssupport für ältere Releases endet nach festem Zeitplan, und jede neue Version bringt bessere Performance, aktualisierte Abhängigkeiten und wartbareren Code. In diesem Leitfaden gehe ich den vollständigen Upgrade-Pfad durch: von Drupal 8 und 9 über Drupal 10.3+ bis zu Drupal 11, inklusive PHP-Planung, Contrib-Modulen, Custom-Code-Prüfungen und Composer-Befehlen. Hintergrund zu Drupal 11: unser Drupal 11 Release-Überblick. Wenn Sie den Umfang noch einschätzen, lesen Sie wie Sie ein Drupal-Versionsupgrade vorbereiten.

In diesem Artikel:

Warum auf Drupal 11 aktualisieren?

Drupal 11 wurde 2024 veröffentlicht und setzt die moderne Drupal-Linie auf Symfony 6 und PHP 8.3+ fort. Auf nicht unterstützten Versionen zu bleiben bedeutet keine Sicherheitsfixes von Drupal.org. Drupal 9 endete im November 2023; Drupal 10 folgt demselben Zyklus. Ein Upgrade geht nicht nur um neue Features - es hält Ihre Website auf einem unterstützten Stack und an aktuellen Web-Standards ausgerichtet.

Drupal 11 baut auf Drupal 10 auf mit weiteren Dependency-Updates, entferntem Legacy-Code und laufender Performance-Arbeit. Wenn Sie langfristige Optionen von sehr alten Versionen vergleichen, zeigt unser Vergleich Drupal 7 vs Drupal 11, wie weit sich die Plattform entwickelt hat. Websites auf Drupal 7 sollten zuerst Drupal 7 End of Life lesen.

Können Sie direkt auf Drupal 11 aktualisieren?

In den meisten Projekten ist der sicherste Weg zu Drupal 11 kein einzelner Sprung von einer alten Website auf die neueste Version. Eine Drupal 8 oder Drupal 9 Website sollte zuerst auf eine unterstützte Drupal 10 Version gebracht werden. Die Drupal.org-Dokumentation verweist für Drupal 11 auf Drupal 10.3 oder neuer als Zwischenschritt, weil ältere Update-Schritte in Drupal 11 nicht mehr vorhanden sind.

Das ist wichtig für die Planung. Es reicht nicht, nur die Core-Version in Composer zu ändern. Das Team muss Hosting-Anforderungen prüfen, Contrib-Module aktualisieren, veraltete APIs aus Custom Code entfernen und die Website nach jedem größeren Schritt testen.

Was hat sich zwischen Drupal 10 und Drupal 11 geändert?

Drupal 11 verfeinert die Plattform, statt sie neu zu erfinden. Erwarten Sie Dependency-Updates, Bereinigung veralteter APIs und einige aus dem Core entfernte Module. Der Übergang von Drupal 10 ist meist sanfter als ältere Major-Sprünge, aber Planung bleibt wichtig.

Plattform-Anforderungen

  • PHP 8.3 oder neuer ist für Drupal 11 erforderlich (Drupal 10 verlangte PHP 8.1+).
  • Symfony 6.4+ und aktualisierte JavaScript-Bibliotheken liefern mit dem Core.
  • Datenbankversionen bleiben ähnlich wie bei Drupal 10: MariaDB 10.3.7+, MySQL 5.7.8+, PostgreSQL 12+, SQLite 3.26+.

Entfernte Core-Module und Themes

Mehrere in Drupal 10 als deprecated markierte Erweiterungen werden in Drupal 11 entfernt, darunter Actions UI, Activity Tracker, Book, Forum, Statistics und Tour. Single Directory Components (SDC) und Help Topics sind in anderer Form im Core integriert und gelten in der alten Variante als obsolet. Vor dem Upgrade entweder diese Module in Drupal 10 absetzen oder Contributed-Ersatz auf Drupal 10.3+ installieren.

Früher entfernte Themes (Classy, Bartik, Stable, Seven) bleiben als Contributed-Projekte verfügbar, wenn Ihre Website noch davon abhängt.

Wie bereiten Sie ein Drupal-Upgrade vor?

Beginnen Sie mit einem vollständigen Backup von Dateien und Datenbank. Prüfen Sie, ob das Hosting die PHP- und Datenbankversionen der Ziel-Drupal-Version unterstützt. Richten Sie eine lokale oder Staging-Kopie ein, in der Sie Upgrade Status ausführen, Composer-Updates anwenden und testen können, ohne Production-Traffic zu beeinträchtigen.

Dokumentieren Sie Anpassungen an Scaffold-Dateien (z. B. .htaccess oder settings.php). Drupal 11 ersetzt beim Upgrade alle Core-Scaffold-Dateien - beabsichtigte Änderungen müssen danach erneut angewendet werden.

Was sollten Sie vor einem Drupal 11 Upgrade prüfen?

Nutzen Sie diese Checkliste, bevor Sie das Drupal 11 Upgrade-Fenster planen:

  • PHP-Version und Hosting-Stack bestätigen,
  • Drupal Core auf die nötige Zwischenversion bringen (Drupal 10.3+),
  • Upgrade Status vor dem Major Upgrade ausführen,
  • Contrib-Module auf Drupal 11-kompatible Versionen aktualisieren,
  • Custom Module und Themes mit Upgrade Status und Rector prüfen,
  • Composer-Constraints, Patches und Drush-Version prüfen,
  • redaktionelle Workflows, Formulare, Integrationen und Cache testen.

Wie aktualisieren Sie von Drupal 8?

Drupal 8 endete im November 2021. Es gibt keinen unterstützten Pfad von Drupal 8 direkt zu Drupal 11. Planen Sie ein gestuftes Upgrade: Drupal 8 → Drupal 9 → Drupal 10.3+ → Drupal 11.

Für den ersten Schritt siehe Drupal 8 vs Drupal 9 und den allgemeinen Prozessüberblick zur Website-Migration. Behandeln Sie jede Major-Version als eigene Projektphase mit separatem Testing und Deployment.

Wie aktualisieren Sie von Drupal 9 auf Drupal 10?

Läuft Ihre Website auf Drupal 9, ist das Upgrade auf Drupal 10 der erforderliche Zwischenschritt vor Drupal 11. Der Prozess hat mehrere Phasen. Unser Drupal 10 Leitfaden zu Features und Upgrade erklärt, was sich in dieser Version geändert hat.

1. PHP auf Version 8.1 oder höher aktualisieren

Drupal 10 verlangt PHP 8.1+. Bevor Sie PHP auf dem Server ändern, prüfen Sie, ob Contrib-Module und Custom Code die Zielversion unterstützen. PHP_CodeSniffer und PHP Compatibility helfen, Syntax- und Extension-Probleme früh zu finden.

2. Drupal 9 auf die neueste 9.x-Version bringen

Wechseln Sie mindestens auf Drupal 9.4.4; die neueste 9.5.x-Version wird vor dem Sprung zu Drupal 10 empfohlen:

composer update "drupal/core-*" --with-all-dependencies
drush cr -y
drush updb -y
drush cex -y

3. Deprecated Core-Themes deinstallieren

Classy, Bartik, Stable und Seven wurden aus Drupal 10 Core entfernt. Deinstallieren Sie sie unter /admin/appearance, wenn sie noch aktiv sind. Erweitern Custom Themes diese Basis, installieren Sie Contributed-Ersatz:

composer require drupal/seven
composer require drupal/classy
composer require drupal/bartik
composer require drupal/stable

4. Migration zu CKEditor 5

Drupal 10 setzt standardmäßig CKEditor 5 ein. Der neue Editor wurde neu geschrieben - nicht jedes CKEditor-4-Plugin hat ein direktes Äquivalent. Prüfen Sie Plugin-Kompatibilität in der CKEditor-5-Dokumentation, bevor Sie Formate unter /admin/config/content/formats umstellen. Danach das alte CKEditor-Modul deinstallieren.

5. Module mit Upgrade Status aktualisieren

Upgrade Status installieren und aktivieren, dann unter /admin/reports/upgrade-status scannen:

composer require drupal/upgrade_status
drush en upgrade_status -y

Meldungen in Custom Code beheben. Contrib-Module auf Drupal-10-kompatible Versionen aktualisieren. Gibt es noch keine kompatible Version, Issue Queue prüfen, Patches anwenden oder das Drupal Lenient Composer Plugin nutzen:

composer require mglaman/composer-drupal-lenient
composer config --merge --json extra.drupal-lenient.allowed-list '["module_name"]'

Beheben Sie Kompatibilitätsprobleme, bis Upgrade Status ein sauberes Ergebnis für Drupal 10 meldet.

6. Drupal Core auf Version 10 aktualisieren

composer.json prüfen und veraltete Patches entfernen. Dann Core-Constraints aktualisieren:

composer require 'drupal/core-recommended:^10' 'drupal/core-composer-scaffold:^10' 'drupal/core-project-message:^10' --update-with-dependencies --no-update
composer require 'drush/drush:^12' --no-update
composer update
drush cr -y
drush updb -y
drush cex -y

Bei drupal/core-dev --dev zur core-dev-Zeile hinzufügen. Bei Dependency-Konflikten zuerst composer update --dry-run ausführen.

7. Lokal testen, dann deployen

Formulare, Navigation, redaktionelle Workflows, Integrationen und Cache in Local oder Staging testen. Vor Production auf Test-Server deployen. Hosting-Anforderungen und Backups unmittelbar vor dem Production-Cutover erneut prüfen.

Wie aktualisieren Sie von Drupal 10 auf Drupal 11?

Läuft die Website auf Drupal 10.3.0 oder neuer, können Sie das Drupal 11 Upgrade vorbereiten. Drupal.org entfernt Update-Hooks aus Releases vor 10.3 - dieser Zwischenschritt ist Pflicht.

1. PHP 8.3+ und Hosting bestätigen

Drupal 11 verlangt PHP 8.3.0 oder neuer. PHP zuerst auf Staging aktualisieren und die Test-Suite erneut ausführen, bevor Production an der Reihe ist.

2. Deprecated Module und Scaffold-Änderungen klären

Core-Module deinstallieren oder ersetzen, die Drupal 11 entfernt (Book, Forum, Statistics und andere oben genannte). Custom-Regeln in Scaffold-Dateien notieren, um sie nach dem Upgrade wiederherzustellen.

3. Contributed und Custom Code aktualisieren

Upgrade Status erneut gegen das Drupal-11-Ziel ausführen. Jedes Contrib-Modul auf eine kompatible Version bringen:

composer require drupal/webform:^6.2 --no-update

Für Custom Code Drupal Rector zusammen mit Upgrade Status nutzen, um deprecated APIs zu ersetzen. Braucht ein Modul eine Brückenversion, können Constraints erweitert werden, z. B. "drupal/linkit": "^6.1 || ^7.0".

4. Core und Drush mit Composer aktualisieren

Im Drupal-Root Schreibrechte auf Settings-Dateien setzen, dann Constraints aktualisieren:

chmod u+w web/sites/default
chmod u+w web/sites/default/*settings.php
chmod u+w web/sites/default/*services.yml

composer require 'drupal/core-recommended:^11' \
  'drupal/core-composer-scaffold:^11' \
  'drupal/core-project-message:^11' --no-update

composer require 'drupal/core-dev:^11' --dev --no-update
composer require 'drush/drush:^13' --no-update

composer update --dry-run
composer update

drush updatedb:status
drush updatedb
drush cex -y

chmod 755 web/sites/default
chmod 644 web/sites/default/*settings.php
chmod 644 web/sites/default/*services.yml

5. Tests nach dem Upgrade

Konfiguration exportieren, automatisierte Tests ausführen falls vorhanden, kritische Pfade durchklicken und Logs mit drush watchdog:tail verfolgen. Cron ausführen und Suche, Cache sowie Formularversand prüfen.

Welche Probleme können bei einem Drupal-Upgrade auftreten?

Trotz Vorbereitung treten bei Upgrades vorhersehbare Probleme auf. Wer sie kennt, spart Debugging-Zeit.

Deprecated und entfernte Funktionen

Code, der in Drupal 9 funktionierte, kann in Drupal 10 oder 11 entfernte APIs aufrufen. Upgrade Status und Rector helfen bei der Suche und Behebung; Contrib-Module brauchen ggf. Patches aus der Issue Queue.

accessCheck() bei Entity Queries erforderlich

Drupal 10+ verlangt ::accessCheck() bei Content-Entity-Queries vor der Ausführung. Fehlende Aufrufe verursachen Laufzeitfehler in Custom und Contributed Code.

jQuery once entfernt

Das jQuery-once-Plugin wurde aus dem Core entfernt. core/jquery.once durch core/once in libraries.yml ersetzen und in JavaScript once() statt $.once() verwenden.

Inkompatible Contrib-Module

Gibt es noch kein Drupal-11-Release, Issue Queue prüfen, Community-Patch anwenden oder vorübergehend den Lenient-Composer-Endpoint nutzen. Siehe auch: warum sich ein Upgrade von alten Drupal-Versionen lohnt, auch wenn Modul-Lücken den Zeitplan verlängern.

Composer-Dependency-Konflikte

Patches, explizite Core-Pins und veraltete Constraints blockieren oft composer update. composer why-not drupal/core ^11 zeigt Blocker - vor dem Dry Run beheben.

Welche Composer-Befehle helfen beim Drupal-Upgrade?

Diese Befehle tauchen beim Drupal 11 Upgrade-Pfad wiederholt auf:

  • composer why-not drupal/core ^11 - listet Pakete, die ein Core-Update blockieren.
  • composer require 'drush/drush:^13' --no-update - bereitet Drush vor, ohne sofort zu installieren.
  • composer update --dry-run - simuliert das Update und zeigt Konflikte.
  • composer update "drupal/core-*" drush/drush --with-all-dependencies - begrenzt den Update-Umfang auf Core und Drush wenn nötig.

Brauchen Sie Hilfe bei der Planung eines sicheren Wegs zu Drupal 11?

Ein Upgrade von Drupal 8, 9 oder 10 auf Drupal 11 ist ein mehrstufiges Projekt: Zwischen-Core-Versionen, PHP-Updates, Modul-Kompatibilität und gestuftes Testing. Teams, die die Planung überspringen, unterschätzen oft den Aufwand für Custom Code und Contrib-Module zwischen Major-Versionen.

Wenn Sie Unterstützung bei Scope oder Umsetzung brauchen, führen wir Drupal 10/11 Readiness Audits, Composer-Updates und Production Deployments durch. Besuchen Sie unsere Drupal 10/11 Readiness and Upgrade Services oder Drupal-Agentur für laufenden Support nach dem Go-live.

-