TYPO3: Mit Rector Aktualisierungen in TYPO3 optimieren

TYPO3 Rector erlaubt eine schnelle, automatisierte Überarbeitung von TYPO3-PHP-Code. Auf diese Weise sorgen Sie ohne großen Aufwand dafür, dass die Elemente Ihrer Installation stets aktuell sind – was insbesondere bei Updates und Upgrades wichtig ist.

Was ist TYPO3 Rector?

TYPO3 Rector ist ein Tool, das Entwicklerinnen und Entwicklern hilft, den Code automatisch an neue Versionen von TYPO3 oder an neue PHP-Standards anzupassen. Bei einem Update auf eine neue Version von TYPO3 können durch Rector veraltete Funktionen und Methoden automatisch durch die neuen, empfohlenen ersetzt werden. Abseits der Durchführung von Major-Updates kann Rector auch bei umfangreichen Code-Anpassungen eine wertvolle Hilfe sein.

Welche Vorteile bringt Typo3 Rector?

Rector bietet vordefinierte Regeln für TYPO3, die speziell darauf abzielen, die Kompatibilität mit neuen Versionen zu gewährleisten und den Code zu modernisieren. Wenn Sie zum Beispiel eine TYPO3-Extension auf eine neue Version anpassen müssen, kann Rector den Großteil der Refaktorierung übernehmen und Ihnen viel manuelle Arbeit abnehmen. Besonders bei großen Projekten mit vielen individuellen Anpassungen oder Extensions ist Rector ein sehr hilfreiches Tool, um sicherzustellen, dass alle Code-Teile korrekt und effizient aktualisiert werden – auch unabhängig von TYPO3-Updates.

TYPO3 Rector analysiert den Quellcode Ihrer Projekte und passt ihn systematisch an die Anforderungen neuer TYPO3-Versionen oder aktueller PHP-Standards an. Rector kann zudem Klassen automatisch auf Namespaces migrieren, Typdeklarationen für Methoden ergänzen und veraltete Funktionen beheben.

Entwicklerinnen und Entwickler profitieren also insbesondere von folgenden Vorteilen:

  • Geringerer Aufwand bei Code-Refaktorierung
  • Erhöhte Produktivität
  • Einfache Integration in CI/CD-Pipelines
  • Minimiertes Fehlerpotential durch manuelle Anpassungen
  • Unterstützt eine langfristig wartbare Codebasis
  • Gewährleistet eine konsistente Codequalität
  • TYPO3 Rector ist individuell konfigurierbar, um spezifische Anforderungen eines Projekts zu erfüllen
Hosten Sie Ihre TYPO3-Website
TYPO3 für Ihr Hosting Paket
  • Einfach: mit wenigen Klicks installiert
  • Sicher: SSL-Zertifikat inklusive
  • Schnell: PHP8, OPcache und SSD Webspace

So nutzen Sie TYPO3 Rector für die Code-Aktualisierung

In den nachfolgenden Abschnitten erfahren Sie, wie Sie das praktische Code-Refaktorierungs-Tool installieren, konfigurieren und ausführen. Abschließend zeigt ein kleines Beispiel exemplarisch, wie die Anwendung Sie im Programmieralltag unterstützen kann.

Hinweis

Führen Sie TYPO3 Rector niemals in der Produktionsumgebung aus! Nutzen Sie das Tool immer in einer Entwicklungsumgebung, in der der Code unter Versionskontrolle steht (z. B. via Git). Überprüfen und testen Sie Änderungen zunächst, bevor Code-Migrationen Ihre Website möglicherweise funktionsunfähig machen.

Schritt 1: TYPO3 Rector installieren

TYPO3 Rector ist ein PHP-Paket, das Sie ganz einfach mithilfe von Composer einrichten können. Voraussetzung ist also, dass Sie TYPO3 mit Composer installiert haben. Sie fügen Rector dann zu Ihrem Projekt hinzu, indem Sie den entsprechenden Composer-Befehl verwenden:

composer require --dev ssch/typo3-rector
bash

Sollten Sie im Rahmen der Installation auf Kompatibilitätsprobleme stoßen, können Sie es alternativ mit folgendem Kommando versuchen:

composer require --dev ssch/typo3-rector-prefixed
bash

Schritt 2: Rector konfigurieren

Nach der Installation von TYPO3 Rector erzeugen Sie mit folgendem Befehl eine Konfigurationsdatei mit einem Basis-Setup, das sich individuell an Ihre Anforderungen anpassen lässt:

vendor/bin/typo3-init
bash

Die erstellte Konfigurationsdatei ist in der Regel unter dem Namen rector.php im Root-Verzeichnis Ihres Projekts zu finden. Sie können dort beispielsweise festlegen, welche Verzeichnisse oder Dateien geprüft und refaktoriert werden sollen, indem Sie folgende Angaben machen:

$parameters->set(Option::PATHS, [
    __DIR__ . '/typo3conf/ext',
    __DIR__ . '/packages',
]);
php

Außerdem können Sie festlegen, auf welche TYPO3-Version Rector den Code optimieren soll, z. B. auf Version 12.4:

$containerConfigurator->parameters()->set('typo3_version', '12.4');
php

Welche Möglichkeiten Sie bei der Konfiguration im Detail besitzen, können Sie der offiziellen Rector-Dokumentation (unter „Configuration“) entnehmen.

Schritt 3: TYPO3 Rector ausführen

Sobald Sie TYPO3 Rector konfiguriert haben, können Sie das Tool auf jeden beliebigen Zielpfad in Ihrer TYPO3-Installation ausführen. Um zunächst nur die von Rector geplanten Änderungen anzeigen zu lassen, hängen Sie im ersten Kommando den Parameter --dry-run an:

vendor/bin/rector process --dry-run
bash

Auf diese Weise können Sie Fehler und ungewollte Anpassungen im Vorhinein leicht identifizieren. Um die Änderungen schließlich durchzuführen, wiederholen Sie den Befehl und lassen den Zusatz dabei weg:

vendor/bin/rector process
bash

Schritt 4: Code refaktorieren (Beispiel)

Um die Funktionsweise von TYPO3 Rector besser zu verstehen, demonstrieren wir sie abschließend an einem konkreten Beispiel: In älteren TYPO3-Versionen wurde häufig die Methode GeneralUtility::linkThisScript() verwendet, die in neueren Versionen durch Request::getScriptRequestUri() ersetzt wurde.

Folgende Codezeile in der aktuellen TYPO3-Installation ist noch auf eine ältere TYPO3-Version abgestimmt und enthält die alte Methode:

$link = GeneralUtility::linkThisScript(['param' => 'value']);
php

Wenden Sie nun TYPO3 Rector auf den Code an, erkennt das Tool die veraltete Deklaration und ersetzt die alte Methode:

$link = Request::getScriptRequestUri() . '?param=value';
php
Domain kaufen
Registrieren Sie Ihre perfekte Domain
  • Inklusive Wildcard-SSL-Zertifikat
  • Inklusive Domain Lock
  • Inklusive 2 GB E-Mail-Postfach
War dieser Artikel hilfreich?
Page top