Das bringt die neue Version: TYPO3 CMS 7 ist da
Die Version 7.0, die Anfang Dezember 2014 erschien, schließt den ersten Entwicklungs-Zyklus der 7er-Reihe ab. Nach dem ersten Sprint und vielen Änderungen im TYPO3-Backend haben die Active Contributors nun die Stabilisierung abgeschlossen. Die neuen, agileren Release-Zyklen sollen für jede Version einen klaren Fokus auf bestimmte Bereiche des Cores legen und so Entwicklern und Kunden schneller zur Verfügung stehen [1].
Außerdem entstehen die Releases der Version 7 bei strikter Trennung von Technik und
Organisation: Benjamin Mack besetzt die technische Leitung und Mathias
Schreiber die Rolle des Product Owner – er kümmert sich also um die
organisatorische Leitung und steuert die Entwicklung. Obwohl beide
schon sehr lange in der TYPO3-Community aktiv sind, ist dies ihre erste
größere Zusammenarbeit. Die neue TYPO3-Release-Struktur ist somit auch
ein Gradmesser dafür, inwieweit die neue Arbeitsstruktur die weitere
Entwicklung von TYPO3 positiv beeinflusst.
Die Systemanforderungen
TYPO3 CMS 7 bringt neue Mindestanforderungen mit sich: PHP ist mindestens in der Version 5.5.0 und MySQL in der Version 5.5.x nötigt. Dies entspricht dem aktuellen Software-Stand der gängigen Linux-Server-Distributionen – für ältere LTS-Versionen gibt es in der Regel Update-Pakete für PHP und MySQL. Mit den Mindestanforderungen lässt sich auch die Version 6.2 betreiben, sodass ein Update von 6 auf 7 problemlos und ohne den Wechsel der Systemkonfigurationen möglich ist.
In der PHP-Konfiguration benötigt Version 7: memory_limit >= 128 M und Max_execution_time >= 240s. Das TYPO3-Backend setzt mindestens den Internet Explorer in der Version 9.0 voraus. Andere Browser aktualisieren sich in der Regel automatisch und sind somit auf einem aktuellen Stand.
Neues Backend
Das TYPO3-Backend von Version 7.0 ist komplett überarbeitet und
basiert technisch jetzt auf Twitter Bootstrap. Dies gilt sowohl für das
HTML/CSS als auch in Sachen JavaScript. Durch den Einsatz von Bootstrap ist
nun jQuery das Framework der Wahl. Im Rahmen der Entwicklung wurden die vorhandenen Module bereits zu großen Teilen auf die neue Technologie umgestellt.
Auch das Design des Backends hat sich modernisiert: Die vorhandenen
Modul-Icons sind App-Icons gewichen. Durch einen größeren Abstand der
Module (Apps) zueinander sind diese nun klarer zu erkennen und
voneinander abgegrenzt, was sich positiv auf die Übersichtlichkeit
auswirkt. Bootstrap und Icons machen das Backend
nun auch „Tablet ready“ – zumindest für die Module, die
bereits komplett umgestellt sind.
Neuerungen in Modulen
Dabei haben sich auch die einzelnen Module verändert: User- und Hilfe-Modul sind von der linken Spalte in die obere Leiste gewandert. Das User-Modul findet man nun unterhalb des Nutzernamens als Dropdown-Menü, wo sich die einzelnen Funktionen auswählen lassen.
Das Listen-Modul ist ebenfalls neu gestaltet: Die Elemente fügen sich übersichtlicher und harmonischer in das Gesamtlayout ein. Die Suche im Page- und Listen-Modul ist gleichfalls nach oben gewandert. Dort steht sie per Klick als erstes Element auf der Seite zur Verfügung. Das lästige Scrollen nach unten entfällt somit. In vielen Modulen gibt es kleinere Änderungen, die ein flüssigeres, klareres und insofern auch besseres Arbeiten mit TYPO3 ermöglichen. Nachfolgend ein paar Beispiele:
- Wer die Systemerweiterung opendocs installiert, sieht im Kopf einen Badge mit der Zahl der offenen Dokumente.
- Das File-Modul bietet jetzt einen Media-Player für Filme im Info-Bereich.
- Eine Fortschrittsanzeige direkt unterhalb des Top-Menüs löst den bisher angezeigten Load-Spinner ab.
Erweiterungen für Entwickler
Da der Fokus der Version 7.0 auf Anpassungen im Backend lag, gibt es nur wenige große neue Funktionen für Entwickler. Die Ergänzungen stecken im Detail. Hier eine Auswahl an Neufunktionen:
RTE – Konfiguration
Version 7.0 hat eine erweiterte Konfiguration des RTE, um diesen auch in komplexeren CSS-Frameworks nutzen zu können: Entwickler können nun mehrere Klassen an ein Element vergeben, einzelne Klassen als nicht selektierbar konfigurieren und mehrere CSS-Dateien verknüpfen.
TCA – Konfiguration
Für das Backend kann man bei der Validierung der Eingaben erstmalig den Typ „email“ setzen. TYPO3 überprüft dann, ob der Nutzer in der Spalte auch wirklich eine E-Mail-Adresse eingegeben hat. Eigene Validatoren lassen sich durch die Core-Funktion ersetzten.
Upgrade auf TYPO3 7.0
Der Fokus des ersten Sprint Releases von TYPO3 7.0 liegt klar auf dem Backend; größere Änderungen im Core hat es nicht gegeben. Daher ist ein Upgrade des Cores von 6.2 auf 7.0 relativ einfach. Nutzer müssen nur den neuen Quellcode installieren und den Upgrade-Wizard im Install-Tool starten.
In der neuen Version hat das TYPO3-Core-Team viele als deprecated klassifizierte Core-Methoden entfernt. Gerade bei älteren Extensions kann dies zu Problemen führen. Daher empfiehlt das Core-Team im Wiki von TYPO3.org, vor dem Upgrade zunächst alle Extensions zu deaktivieren, das Upgrade des Cores durchzuführen und danach die Extensions Schritt für Schritt wieder zu installieren. Im Wiki finden sich auch alle 62 Breaking Änderungen [2].
Kompatibilität zu Extensions
Bisher sind laut t3extensions.org nur rund 50 Extensions offiziell kompatibel mit TYPO3 7.0 [3]. Um gerade in der Übergangszeit weiterhin alte Extensions betreiben zu können, gibt es eine Kompatibilitäts-Extension („compatibility6“), mit der sich zumindest viele Erweiterungen nutzten lassen, die für die Version 6.2 kompatibel sind. Diesen zusätzlichen Layer hat das Core-Team entwickelt, um einen frühen Test der neuen Version zu ermöglichen.
Aber Achtung: Diese Extension steht nur temporär zur Verfügung, ein Update der Extensions auf eine kompatible Version ist notwendig. Extension-Entwickler sollten daher schon jetzt ihre Angebote prüfen und gegebenenfalls an die Version 7.0 anpassen.
Die viel genutzte Extension realURL von Dmitry Dulepov gibt es erst im März 2015 in einer neuen Version, die dann TYPO3 6.2 und 7 unterstützt [4]. In der Zwischenzeit kann man eine von Helmut Hummel angepasste Version nutzen, die auf github zum Download bereit steht [5].
Für wen lohnt sich die Version 7.0?
TYPO3 7.0 bietet deutliche Verbesserungen für Redakteure. Technisch sind erst wenige Änderungen seit TYPO3 6.2 eingeflossen. Durch die neue Release-Strategie wird im 7er-Branch nur eine Version aktiv gepflegt und mit Sicherheits-Patches versorgt. Als Early Adopter kann man bereits die neuen Funktionen nutzen, muss dann aber eine vorhandene Installation nach jedem Sprint-Release auf die aktuelle TYPO3 7.x Version aktualisieren.
Obwohl dies – gemessen an einem Major Upgrade – nur kleinere Updates sind, müssen Entwickler diese dennoch zeitnah durchführen und können dabei auf (kleinere) Probleme bei vorhandenen Extensions stoßen.
Insofern sollte man ein Projekt mit der Version 7.0 nur dann betreiben, wenn man auch über die Laufzeit bis zur Veröffentlichung der LTS-Version die Kapazitäten hat, die Updates durchzuführen. Dies kann zum Beispiel bei einem neuen Web-Projekt der Fall sein, oder wenn die Updates durch eine Wartung gewährleistet sind.
Extension-Entwickler sollten schon jetzt ihre Erweiterungen mit der aktuellen TYPO3-7-Version prüfen. Da Entwickler in der Regel bereits git nutzen, können diese auch direkt den aktuellen Git-Master des CMS-Entwickler-Teams verwenden und somit auch zwischen den Sprints ihre eigenen Entwicklungen prüfen oder die neuen Features integrieren.
Ausblick
Für 2015 sind fünf weitere Sprint Releases geplant; abgeschlossen wird die Entwicklung des 7er-Branches durch die Veröffentlichung einer LTS-Version [6]. In jedem Sprint will das Core-Team mit der gleichen Konsequenz an den anvisierten Zielen für die jeweilige Version arbeiten. Diese Entwicklungsstrategie verspricht viele positive Einflüsse auf TYPO3 CMS und mindestens fünf weitere Releases mit weiteren stetigen Verbesserungen, bevor die Entwicklung von TYPO3 CMS 8 beginnt.
Version 7.1 wird deutlich weniger Neuerungen für Anwender haben, vielmehr wird einiges unter der Haube passieren: Zu erwarten ist, dass es dann an viele kleine technische Unschönheiten im Core und FAL geht – quasi das System aufgeräumt wird, bevor das Frontend und der ExtensionManager an der Reihe sind. Auch an der Performance des Systems sollte das Team weiter arbeiten.
Fazit
Insgesamt machen die Neuerungen der Version 7.0 einen guten Eindruck. Vor allem die neuen Konzepte im Layout ermöglichen eine bessere und schnellere Nutzung des Systems, was zu einer deutlichen Steigerung der Akzeptanz bei Redakteuren führen dürfte. Die einheitliche Technologie sorgt für eine wesentlich schnellere Darstellung der Backend-Elemente. Insbesondere JavaScript-Funktionen laden merklich schneller. Leider sind noch nicht alle Bereiche im TYPO3-Backend komplett auf das neue Layout und die neue Technologie umgestellt, sodass man an einigen Stellen noch auf Icons im alten Design stößt oder die Verarbeitung plötzlich länger dauert. Dennoch ist das Gesamtergebnis überzeugend, die Strategie der Sprints scheint aufzugehen.