Von Halil Uzun publiziert am 4. Juli 2018

TYPO3 Version 9 - Die wichtigsten Features des neuen Major Releases

Im Dezember 2017 wurde TYPO3 v9.0 veröffentlicht. Auf dem Weg zum TYPO3 Version 9 LTS Release wurde das CMS in minor Releases sukzessive weiterentwickelt. Seit dem 2. Oktober 2018 ist endlich soweit und die TYPO3 Version 9.5 wurde die langersehnte Long Time Support (LTS) Version veröffentlicht, sodass ab sofort noch bessere und innovativere Websites entwickelt werden können, die Unternehmen dabei helfen, die eigene Marke zu stärken, um letztlich mehr Leads und mehr Umsatz zu generieren. In unserem Blogartikel stellen wir Ihnen alle neuen Features vor.

TYPO3 Version 9 Releases im Überblick

Version Primärer Fokus
9.0 Vereinheitlichte Seitenübersetzung, Überarbeitung Seitenbaum und Install Tool
9.1 Bearbeitung von Redirects
9.2 Bearbeitung von Seiten  
9.3 SEO und URL Routing
9.4 Frontend-Bearbeitung und URL Routing
9.5 LTS (Long Term Support)

Die TYPO3 v9 Roadmap

Roadmap-TYPO3-v9Quelle: TYPO3.org

Die Neuerungen der TYPO3 Version 9.0

System Maintenance Area

Das bekannte „Install Tool“ wurde im v9.0 Release in „System Maintenance Area“ umbenannt. Grund dafür ist, dass das Tool nicht nur für Installationen, sondern auch zur Konfiguration von TYPO3, Umgebungschecks, Installationstests oder auch für das Update auf neue Versionen zuständig ist. Mit der System Maintenance Area wird somit ein Name geschaffen, der die Funktionen präziser beschreibt.

Neben einem besseren Look and Feel, wird die System Maintenance Area in das Backend implementiert und ist in 4 Bereiche aufgeteilt: „Maintenance“, „Settings“, „Upgrades“ und „Environment“. Zusätzlich wurde eine neue Rolle für die Expertengruppe kreiert, die sich „System Maintainers“ nennt.

Extension Scanner

Oftmals stellt ein Major-Upgrade zwischen zwei Versionen (z. B. von v8 zu v9) eine große Herausforderung dar. Viele CMS-Anbieter empfehlen sogar, die Website von Grund auf neu zu entwickeln. TYPO3 hingegen bietet Usern den großen Mehrwert, Major-Upgrades so unkompliziert wie möglich zu machen. Der neue Extension Scanner, der sich in der System Maintenance Area wiederfindet, zeigt einen detaillierten Überblick, welche weiteren Schritte notwendig sind, um das Upgrade (mit allen Extensions) vollständig auf die neue Version zu upgraden.

Neuer Seitenbaum

Um die Performance weiter zu steigern, hat TYPO3 einen neuen Seitenbaum im TYPO3 Backend erstellt, der auf SVG basiert und somit ein immens schnelles Rendering bietet. Der neue Seitenbaum hat zusätzlich den Effekt, dass ExtJS komplett aus TYPO3 entfernt werden kann. ExtJS ist bekannt für seine Komplexität und es war ein langersehnter Wunsch der Community, dieses aus dem Backend vollständig zu entfernen.

T3-Seitenbaum

Seitenübersetzung

Eines der größten Hürden des Sprachenmanagements war es, wie Seitenübersetzungen bearbeitet wurden. Mit TYPO3 v9.0 wird dieses Problem erleichtert, indem Seitenübersetzungen genauso durchgeführt werden, wie andere Einträge auch.

Aus einem technischen Blickwinkel heißt das, dass die Datenbanktabelle „pages_language_overlay“ nicht mehr benötigt wird, da nun alle Daten in der Haupttabelle „pages“ gespeichert werden.

Protokollierung

Entwickler wissen, wie wichtig die Protokollierung ist und dass eine gemeinsame Schnittstelle entscheidend sein kann, um Fehler zu verfolgen, wichtige Ereignisse aufzuzeichnen und Probleme zu beheben. Der PSR-3 Standard beschreibt eine Protokoll-Schnittstelle für PHP-Anwendungen, die nun von allen Protokoll-Verfahren im gesamten TYPO3-System verwendet wird. Gleichzeitig werden die Änderungen der Protokoll-Datensätze in der historischen Datenbank von TYPO3 korrekt gespeichert, die Protokollierung selbst ist aber getrennt. Somit läuft die gesamte Protokollierung von TYPO3 über den PSR-3 Standard, der mit TYPO3 6.2 eingeführt wurde.

Nicht zugewiesene Content-Elemente

Content-Elemente, die keiner Spalte zugewiesen sind, werden in einer zusätzlichen „Unused“-Spalte am Ende einer Seite angezeigt. Damit wird sichergestellt, dass diese Elemente nicht verloren gehen, wenn von einem Backend-Layout zu einem anderen mit unterschiedlichen Spalten gewechselt wird.
T3-nicht-zugewiesene-elemente

Re-Design des View-Moduls

Webseiten werden heutzutage mit vielen unterschiedlichen Geräten besucht. Umso wichtiger ist es für Redakteure, Webpages responsiv zu erstellen, sodass sie auf jedem Gerät dem gewünschten Design entsprechen. Das View-Modul von TYPO3 bietet genau diese Möglichkeit.

Mit TYPO3 v9.0 erhält das View-Modul ein modernes und schlankes Look and Feel. Die Einführung von kategorisierten Geräte-Presets macht es für Redakteure noch einfacher, eine Seite anzusehen und sich ein besseres Bild davon zu machen, wie sie auf dem jeweiligen Gerät aussieht. Auch die Geräteausrichtung kann jetzt ohne Auswahl eines anderen Geräte-Presets geändert werden.
T3-view-modul

TYPO3 v9.1

Mit über 70 Bugfixes und über 100 abgeschlossenen Development-Tasks bietet TYPO3 v9.1 eine Vielzahl an neuen Features und Verbesserungen

Upgrades hinter den Kulissen

TYPO3 verwendet bekannte, stabile und robuste Open-Source-Bibliotheken von Drittanbietern, die von ihren Entwicklern und der Community entwickelt und aktiv gepflegt werden. Um von den kontinuierlichen Verbesserungen zu profitieren, ist die Integration aktualisierter Versionen in TYPO3 unerlässlich und eine wichtige Aufgabe. In TYPO3 Version 9.1 wurde beispielsweise die Datenbankabstraktionsschicht "doctrine" auf Version 2.6.3 aktualisiert. Der im Backend von TYPO3 verwendete Rich Text Editor "CKEditor" wurde auf Version 4.8.0 aktualisiert. "Moment.js", eine hochentwickelte JavaScript-Bibliothek zum Parsen, Validieren, Manipulieren und Anzeigen von Datum und Uhrzeit, wurde auf Version 2.20.1 aktualisiert.

Das Hauptaugenmerk von TYPO3 Version 9.1 lag jedoch auf dem neuen "Redirects-Modul".

Backend Hauptmodul "Site Management"

TYPO3 Version 9.1 enthält ein neues Hauptmodul "Site Management" im Backend. Es ergänzt die bestehenden Module "Web", "Datei", "Admin Tools" und "System" und soll die zentrale Anlaufstelle für alle standortbezogenen Konfigurationsaufgaben, wie z. B. für Sprachen, Domains und Routing, werden.
T3-redirect-1T3-redirect-2

Das erste Teilmodul vom "Site Management" ist das neue Modul "Redirects".

Redirects Modul

Es gibt verschiedene Methoden, wie eine Anfrage an einen Webserver oder die Webanwendung bearbeitet wird. Die erste Anfrage an eine Ressource führt nicht immer zu einer HTML-Seite. Die Umleitung des Benutzers auf eine bestimmte andere Ressource (z. B. einer Datei oder Seite) ist nicht ungewöhnlich.

Ein neues Backend-Modul namens "Redirects" wurde in TYPO3 Version 9.1 eingeführt. Wie der Name schon sagt, erlaubt sie TYPO3-Integratoren und -Redakteuren, Weiterleitungen für ihre Website zu konfigurieren. Die Redirects können auf eine bestimmte Domain beschränkt und der HTTP-Response-Code einfach konfiguriert werden. Darüber hinaus kann der Quellpfad als regulärer Ausdruck dargestellt und bei Bedarf ein Redirect auf HTTPS erzwungen werden.

Redirects sind ein wichtiger Bestandteil jeder SEO-Strategie und werden oft für Marketing-Kampagnen verwendet, um eine kurze, aussagekräftige URL zu implementieren, die möglicherweise nicht zur Seitenstruktur in TYPO3 passt.

Dieses neue Modul macht das alte Redirect-Feature obsolet und somit wurde die Option, eine Redirect zu konfigurieren, wenn eine Domain zu einer bestimmten Seite oder einem Seitenzweig hinzugefügt wurde, entfernt.

Anzeigen der Feldnamen im Debug-Modus

TYPO3-Integratoren und -Entwickler beschäftigen sich oft mit Eingabefeldern im Backend und müssen den entsprechenden Namen in der Datenbank kennen. Wenn der Debug-Modus in TYPO3 aktiviert ist, wird nun der Feldname jedes FormEngine-Feldes im Backend angezeigt. Dies erleichtert auch die Konfiguration der Zugriffsrechte, da bei der Konfiguration von Backend-Benutzern oder Benutzergruppen die gleichen Feldnamen erscheinen.

Feature Toggles

Eine weitere spannende Neuerung der TYPO3 Version 9.1 ist die neue API-Klasse "Features". Damit kann geprüft werden, ob ein Feature in einer TYPO3-Instanz aktiviert oder deaktiviert ist. Der Hauptvorteil ist, dass neue Features nicht nur parallel zu bestehenden Features entwickelt und einfach ein- und ausgeschaltet werden können, sondern auch, dass Administratoren explizit auf neue Features umschalten oder bestehende programmgesteuert deaktivieren können.

TYPO3 v9.2

Die Sprint-Version 9.2 konzentriert sich auf "Site Handling" und soll die Produktivität der Redakteure erhöhen, die Kreativität der Entwickler fördern und das Leben der Integratoren erleichtern.

Site Handling

site-configuration-backend-edit-1-generalsite-configuration-backend-edit-2-languagesite-configuration-backend-edit-3-errorhandlingsite-configuration-backend-list

Die bemerkenswerteste Neuerung in TYPO3 Version 9.2 ist die Site Handling Funktionalität. Das bereits in Version 9.1 eingeführte Site Management Modul im Backend von TYPO3 enthält nun ein neues Submodul "Konfiguration". So können Integratoren und Site-Administratoren eine globale Konfiguration für einen oder mehrere Standorte hinzufügen und ändern.

Eine Website-Konfiguration hat einen eindeutigen (von Menschen lesbaren) Identifier und Konfigurationswerte wie die Root Page ID, den Basispfad (Entry Point), Sprachdefinitionen usw. Durch die Speicherung der Einstellungen in einer YAML-Datei unter "typo3conf/sites/site-identifier/" ist es einfach, die Konfiguration in einem Versionskontrollsystem wie z. B. Git zu pflegen. Die Site Handling Funktionalität unterstützt bereits Konfigurationen wie Domains, Sprachen, Fehlerbehandlung und wird bis zum Release v9 LTS im Laufe dieses Jahres weiter ausgebaut.

Profiling

Das bekannte "TYPO3 Admin Panel" bietet einen tieferen Einblick in die internen Prozesse von TYPO3 während des Betriebs. Einmal aktiviert, können TYPO3-Integratoren und Site-Administratoren auf Performance- und Cache-Statistiken, Einstellungen einer bestimmten Seite usw. zugreifen. Sie können auch bestimmte Frontend-Zugriffssituationen simulieren. Es ist z. B. möglich, eine bestimmte Benutzergruppe nachzuahmen oder einen Zeitstempel zu simulieren, der einen Einfluss darauf haben kann, was im Frontend angezeigt wird.

Dieses Feature wurde selbstverständlich nicht aus TYPO3 entfernt, aber das Admin-Panel wird wieder auf den neuesten Stand der Technik gebracht. Im ersten Schritt wurde es aus dem Kern in eine dedizierte Systemerweiterung verschoben, die es Integratoren ermöglicht, die Funktion bei Bedarf einfach zu aktivieren und zu deaktivieren. Dieser Schritt bildet auch die Grundlage für weitere Verbesserungen wie ein modernes Redesign und weitere neue Funktionen. Bessere Profiling-Möglichkeiten und die Option, eigene Funktionen über eine API hinzuzufügen, sind nur zwei Erweiterungen auf der Liste.

Mail-Warteschlange

Das SwiftMailer-Projekt bietet eine ausgefeilte PHP-Bibliothek, die den De-facto-Standard für das Erstellen und Versenden von RFC-konformen E-Mails in PHP mit einer Vielzahl von Funktionen darstellt. SwiftMailer ist seit Version 4.5 in TYPO3 integriert.

Mit TYPO3 Version 9.2 ist es nun möglich, die Warteschlangenfunktionalität von SwiftMailer - auch bekannt als "Spool-Transport" - zu nutzen. In den meisten Fällen wollen Entwickler E-Mails sofort versenden, doch unter bestimmten Umständen ist das "Spulen" von E-Mails und deren spätere Verarbeitung, z. B. aus Performancegründen, vorteilhaft. Deshalb freut es uns, dass die Mail-API von TYPO3 Version 9.2 nun die "SpoolTransport"-Funktionalität von SwiftMailer unterstützt.

Mails können im Speicher (und nur dann gesendet werden, wenn der HTTP-Request keine Ausnahme oder Fehler verursacht hat) oder in Dateien gespeichert werden. Bei letzterem kann der Versand von gespoolten E-Mails durch einen Kommandozeilenaufruf oder durch einen Scheduler-Task ausgelöst werden. In beiden Fällen kann die Anzahl der zu verarbeitenden E-Mails sowie die maximale Zeit begrenzt werden.

Mehr Sicherheit

Sicherheit ist eines der wichtigsten Themen, wenn es darum geht, eine performante Website zu kreieren, die jedoch von allen negativen Einflüssen geschützt bleibt. Auch hier gibt es einige nennenswerte Optimierungen.

TYPO3 speichert verschiedene Dateien im Verzeichnis "var/", das sich typischerweise unter "typo3temp/var/" befindet. Einige dieser Dateien sind z. B. Install-Tool-Session-Dateien, Caching-Framework-Dateien, Dateien zum Sperren oder Protokollieren, Extension-Manager-Dateien oder Dateien, die mit den Import-/Export- oder Core-Update-Funktionen von TYPO3 erzeugt wurden. Obwohl ein korrekt konfigurierter Webserver und eine TYPO3-Instanz den Zugriff auf sensible Dateien im Verzeichnis "var/" verhindert, ist es offensichtlich, dass es sich um nicht-öffentliche Dateien handelt, die besser außerhalb des Web-Root liegen sollten. Um die Sicherheit von TYPO3 weiter zu erhöhen, kann der Pfad zum Verzeichnis "var/" nun als Umgebungsvariable TYPO3_PATH_APP konfiguriert werden. Die folgende Konfigurationsanweisung kann beispielsweise vom Apache-Webserver verwendet werden:

SetEnv TYPO3_PATH_APP /var/wwww/example.com/ Dies würde TYPO3 anweisen, das Verzeichnis "/var/wwww/example.com/var/" zu erstellen und zu verwenden, während das Webverzeichnis "/var/wwww/example.com/htdocs/" sein sollte. Wenn die Umgebungsvariable nicht gesetzt ist, verwenden Nicht-Composer-Installationen von TYPO3 weiterhin "typo3temp/var/" als Standard. Composer-basierte Installationen profitieren direkt von dieser Funktionalität, da die Daten im Ordner "var/" der Projektstammverzeichnisse abgelegt werden.

Verbesserungen für Redakteure

Redakteure dürfen sich mit dem 9.2 Release auf zwei spannende Features freuen, die die Content-Pflege weiter vereinfacht.

Ein Inhaltselement auf einer Seite kann oft als Vorlage für andere, ähnliche Elemente verwendet werden. Dies kann z. B. ein Text/Bild sein, bei dem die meisten der einzelnen Einstellungen, z. B. Überschrift, Aussehen, Zugriffsbeschränkungen etc. exakt gleich sein sollen oder nur geringfügige Anpassungen erfordern. In diesen Fällen ist es sinnvoll, das vorhandene Element zu klonen, was bereits mit der "WEB → List" und Kopieren/Einfügen-Funktionen möglich war. Dieser Prozess erfordert jedoch eine Reihe von Schritten und Klicks.

Eine neue Schaltfläche "Duplizieren" wurde hinzugefügt, die beim Hinzufügen oder Bearbeiten eines Inhaltselements im Backend erscheint. Mit einem Klick können Backend-Benutzer ein Inhaltselement klonen, was den Prozess erheblich vereinfacht.

T3-duplizieren

Die zweite Verbesserung wirkt sich direkt auf die Backend-Benutzeroberfläche (UI) aus und betrifft sowohl Redakteure als auch Entwickler und Designer. In TYPO3 Version 9.2 wurde eine Reihe von sogenannten "Kippschaltern" eingeführt, die nicht nur gut aussehen, sondern auch ein nützliches Werkzeug sind, um Backend-Anwendern das Umschalten zwischen zwei Zuständen zu erleichtern.

Die Rendertypen "checkboxToggle" und "checkboxLabeledToggle" können nun für die Checkboxen verwendet werden. Darüber hinaus werden nun Checkboxen mit Icons angezeigt, die von der IconFactory zur Verfügung gestellt werden.

T3-checkboxes

TYPO3 v9.3

Die herausragenden Aspekte der 4. Sprint-Version sind „out of the box“ SEO-Features, neue Optionen, um die DSGVO-Konformität zu erleichtern und die Unterstützung für stärkere Passwort-Hashing-Funktionen, die die Sicherheit noch weiter erhöhen.

Suchmaschinen glücklich machen

T3-seo

Suchmaschinen wie Google, Bing, Yahoo! und andere sind immer noch der Anlaufpunkt für viele Nutzer bei der Suche nach Informationen im Internet. Diese benötigen Websites, die sie besuchen, scannen und indizieren können. Der "Indexierungsprozess" ist im Wesentlichen die Zuordnung von Wörtern und anderen definierbaren Token zu einem Domainnamen. Websites, die Suchmaschinen in diesem Prozess unterstützen, werden als suchmaschinenfreundlich oder suchmaschinenoptimiert (SEO) bezeichnet.

TYPO3 hatte schon immer den Ruf, suchmaschinenfreundlich zu sein, vor allem weil es einfach war, grundlegende Techniken wie strukturierte Seiteninhalte zu konfigurieren (typischerweise Header-Tags <h1> bis <h6>  als Top-Down-Hierarchie). Andere Optionen, um eine Website einfach von Suchmaschinen scannen zu lassen, sind sprechende URLs, Metadaten und Umleitungen, um Suchmaschinen anzuweisen, ihren Index zu aktualisieren. Durch die Installation von Extensions, die von der TYPO3-Community aus dem TYPO3 Extension Repository (TER) entwickelt wurden, können anspruchsvollere Techniken erreicht werden.

Die Wichtigkeit von Best-Practice-SEO sollte jedoch nicht von Erweiterungen Dritter abhängen, so Richard Haeser (Lead Developer TYPO3). Auf der TYPO3 User Experience Week (T3UXW18) startete er Anfang des Jahres eine Initiative, um den TYPO3-Kern um moderne SEO-Funktionen zu erweitern. Richard hat sich mit Joost de Valk und Riny van Tiggelen zusammengetan und eine Expertengruppe gebildet, die sich intensiv mit verschiedenen Aspekten dieses Themas beschäftigt hat.

Die ersten Ergebnisse ihrer erstaunlichen Bemühungen sind in TYPO3 Version 9.3 zu sehen, die eine neue Systemerweiterung namens "SEO" einführt. Meta-Tags, die für SEO relevant sind und in Seiteneigenschaften gesetzt sind, werden im Frontend standardmäßig ohne zusätzliche Konfiguration gerendert. Hinter den Kulissen verwaltet eine neue Meta Tag API dies auf moderne und schnelle Weise. Offensichtlicher für Integratoren und Redakteure ist ein neuer Reiter "SEO" der Seiteneigenschaften im Backend. Es ist möglich, Suchmaschinen anzuweisen, eine Seite zu indizieren oder Links auf dieser Seite zu folgen, Open Graph-Daten zu einer Seite hinzuzufügen oder Informationen speziell für Twitter hinzuzufügen. Das Open Graph Protokoll wird von allen modernen sozialen Netzwerken wie Facebook oder LinkedIn unterstützt.

Die SEO-Initiative hat noch mehr Features in der Pipeline und der TYPO3-Kern wird voraussichtlich weitere Verbesserungen erhalten, bevor die LTS-Version noch in diesem Jahr im Oktober 2018 auf den Markt kommt.

DSGVO (GDPR) und TYPO3 v9.3

Wenn Sie in der IT-Branche arbeiten oder unseren Blog in den letzten Monaten verfolgt haben, sind Sie sicherlich auf DSGVO (engl. GDPR) gestoßen. Die DSGVO trat am 25. Mai 2018 in Kraft und hat Auswirkungen auf nahezu alle Aspekte der Web-Entwicklung, einschließlich der Entwurfs- und Planungsphase sowie des laufenden Betriebs. Die DSGVO soll den Nutzern mehr Macht über den Schutz, die Transparenz und die Kontrolle ihrer persönlichen Daten geben und gleichzeitig strenge Regeln für das Hosting und die Datenverarbeitung auferlegen.

Als führendes Enterprise Content Management System verfügt TYPO3 über verschiedene Maßnahmen, die es Administratoren und Integratoren ermöglichen, eine vollständige DSGVO-Konformität zu erreichen. Basierend auf der DSGVO-Initiative unter der Leitung von Georg Ringer können in TYPO3 Version 9.3 eine Reihe von Einstellungen vorgenommen werden, die steuern, ob und welche Art von Benutzerdaten wie lange gespeichert werden (Datenhaltezeit). Ein neuer Scheduler-Task kann aktiviert werden, um IP-Adressen von Benutzern/Besuchern in mehreren Datenbanktabellen nach einer bestimmten Zeitspanne zu anonymisieren.

Die Privatsphäre der Nutzer, die Ihre TYPO3-Website besuchen, wird ebenfalls verbessert, indem standardmäßig die "No-Cookie-Domain" von YouTube anstelle von "youtube.com" beim Einbetten von Videos verwendet wird. 

Vor kurzem haben wir in einem unserer Blog-Artikel über die TYPO3 DSGVO-Extension geschrieben: Hier geht es zum Artikel.

Weitere Sicherheitsmaßnahmen

Auch in der TYPO3 v9.3 wurden einige Maßnahmen ergriffen, die für die Sicherheit des CMS sorgen.

Inaktive Frontend- und Backend-Benutzer können nun aus der Datenbank entfernt werden. Das geschieht vor dem Hintergrund des Prinzips der Datenminimierung: Daten (einschließlich Benutzerprofile), die es nicht gibt, können im Falle eines Sicherheitsverstoßes nicht gefährdet werden. TYPO3 unterstützt seit mehr als einem Jahrzehnt salted, also „gesalzene“ Passwörter. Damals waren MD5-Hash-Passwörter keine Seltenheit und viele andere Systeme speicherten sogar Passwörter im Klartext. Die Unterstützung von Klartext-Passwörtern für Backend-Anwender wurde bereits mit der Veröffentlichung von TYPO3 Version 6.2 im Jahr 2014 eingestellt. Salted Passwörter sind der Standard in TYPO3 und die Ära der Klartext-Passwörter endet mit TYPO3 Version 9.3 - auch für Frontend-Anwender. Klartext-Passwörter stellen eine Bedrohung für jedes System dar und sind daher in TYPO3 überhaupt nicht mehr möglich. Die Systemerweiterung "Salted Passwords" kümmert sich um die Passwörter von Frontend- und Backend-Benutzern in TYPO3. Diese Erweiterung unterstützt nun die PHP Password Hashing API, die den Argon2-Hashing-Algorithmus einführt. Integratoren können nun zwischen verschiedenen Passwort-Hashing-Methoden in der Konfiguration (Extension Manager) wählen, unter anderem "Standard PHP password hashing (argon2i)". Passwort-Hashes bestehender Benutzer werden bei Bedarf automatisch aktualisiert, sobald sie sich einloggen.

Datenbanktabellen ganz einfach erstellen

T3-sql

TYPO3-Datenbanktabellen enthalten in der Regel die Felder "Management" und "Business". Verwaltungsfelder dienen zur Verwaltung und Organisation der Datensätze, z.B. "uid", "pid", "sorting" sowie Start- und Stoppdatum/-zeit, das versteckte und gelöschte Flag etc. "Business"-Felder werden für den spezifischen Zweck der Tabelle benötigt, z. B. um einen Namen, eine E-Mail-Adresse, einen Ort oder einen Titel zu speichern. Extension-Entwickler definieren eine "ext_tables.sql"-Datei und das Table Configuration Array (TCA), das in Kombination TYPO3 anweist, welche Datenbanktabellen und Felder angelegt werden sollen. Der Datenbankschema-Analyzer wurde in TYPO3 Version 9.3 wesentlich intelligenter. Er erstellt nun die meisten Verwaltungsfelder automatisch, indem es die TCA-Definition liest. Daher müssen Entwickler die meisten allgemeinen Felder nicht mehr zur SQL-Datei hinzufügen. Ihr Fokus kann und sollte auf der Geschäftslogik liegen.

TYPO3 v9.4

TYPO3 v9.4 ist das letzte Minor-Release, bevor im Oktober die langerwartet LTS-Version v9.5 vorgestellt wird. Die Version 9.4 steht ganz im Sinne des Frontend-Editing und insbesondere Editoren dürfen sich auf neue Features freuen.

Seitenbasiertes URL Handling

Natives URL-Routing steht seit langem auf der TYPO3-Agenda. Erweiterungen von Drittanbietern wie RealURL, CoolURL und SimulateStatic konvertieren eine URL wie "index.php?id=123" in eine menschenlesbare URL, typischerweise basierend auf dem Seitentitel, wie z. B. "/unternehmen/ueber-uns".

Mit der Version 9.4 ist es nicht mehr notwendig, Erweiterungen externer Anbieter zu installieren, da das URL-Handling ab sofort ein fester Bestandteil des TYPO3-Cores ist und out of the box angeboten wird.

Seitenaufzeichnungen in TYPO3 haben nun ein Feld namens "URL Segment", das den Pfad des Website-Frontends zur Seite enthält. Das Feld wird bei der Bearbeitung von Seitendatensätzen im Backend angezeigt und wird in die Seiten-UID im Frontend aufgelöst, wenn eine "Site Configuration" korrekt eingerichtet wurde.

Das URL-Handling bietet einige großartige Möglichkeiten, um in Zukunft optimiert und erweitert zu werden. Das Hauptaugenmerk für das TYPO3 v9 LTS-Release liegt auf der Stabilisierung der API und der Schaffung geeigneter Einstiegspunkte zur Link-Generierung.

list-viewpage-editmassedit

Admin Panel

Mit TYPO3 Version 9.2 wurde der Grundstein für ein neues Admin Panel gelegt. Mit der neuen Version 9.4 hat das Admin Panel nun eine komplette Überarbeitung des Designs sowie des zugrunde liegenden Codes und der Architektur erhalten.

Das Look & Feel wurde geschärft und modernisiert, um den Zugriff auf Informationen durch Unterteilung in logische Module und Submodule zu erleichtern. Die wichtigsten Details des Systems werden auf einen Blick dargestellt und bieten die Möglichkeit, bei Bedarf erweiterte Informationen anzuzeigen. Ajax-Anfragen werden verwendet, um aktualisierte Konfigurationsoptionen zu speichern, was zu einer modernen, reibungslosen Bedienbarkeit führt.

Neben der visuellen Darstellung können die verfügbaren Module und Optionen für Backend-Benutzer und/oder Benutzergruppen (z.B. Redakteure) über den Benutzer TSConfig konfiguriert werden.

Darüber hinaus war das Admin Panel noch nie so flexibel und erweiterbar. Extension-Autoren können ihre eigenen Module schreiben oder Submodule zu bestehenden Modulen hinzufügen.

Mathias Schreiber (TYPO3 GmbH) präsentiert das neue Admin Panel in einem Video auf YouTube. Ein Muss für Redakteure, Integratoren und Entwickler, um sich ein Bild von den neuen Features zu machen.

adminpanel-module-debug-queryadminpanel-module-info-requestadminpanel-settings

TYPO3 ohne Datenbank-Server

TYPO3 unterstützt nun "SQLite" und bietet den Benutzern die Möglichkeit, dieses DBMS während der webbasierten Installation auszuwählen. Auch wenn Sie noch nie zuvor von SQLite gehört haben oder sich nur vage erinnern, dass Sie auf diesen Namen gestoßen sind, stehen die Chancen sehr hoch, dass Sie dieses Datenbankmanagementsystem (DBMS) irgendwo einsetzen. SQLite ist keine traditionelle Client-Server-Datenbank-Engine wie MySQL, MariaDB oder PostgreSQL, aber es ist eine beliebte Wahl als eingebettete Datenbanklösung für Anwendungssoftware wie Webbrowser.

Die Unterstützung von SQLite ist z.B. für relativ kleine TYPO3-Seiten oder für Test- und Entwicklungsinstanzen sehr sinnvoll. Die Datenbank wird in einer einzigen Datei gespeichert und TYPO3 benötigt keine externen Dienste. Das bedeutet, dass TYPO3-Instanzen nun nativ in PHP ausgeführt werden können, einschließlich des Datenspeichers, der als kompakte Datenbank-Engine integriert ist.

Es ist zu beachten, dass für diese Funktion das PHP-Modul "pdo_sqlite" installiert und aktiviert sein muss; die meisten Standard-Linux-Distributionen enthalten dieses Modul standardmäßig. Es ist auch wichtig, dass Systemadministratoren geeignete Maßnahmen ergreifen, um die *.sqlite Datei vor unbefugtem Zugriff zu schützen.

Relevante Seiten-Sprachen

Eine der herausragenden Eigenschaften von TYPO3 ist die Verwaltung von Sprachen für mehrsprachige Websites. Ein Problem in früheren Versionen von TYPO3 war, dass alle Sprachen, die in der Installation konfiguriert wurden, auch für Backend-Benutzer sichtbar und auswählbar waren. Es ist jedoch ein recht häufiges Szenario, dass nicht alle Sprachen verfügbar sein sollten, z.B. weil sie noch nicht produktionsreif sind.

Die Liste der Sprachen im Backend von TYPO3 Version 9.4 ist nun auf die im Site-Modul (unter "Site Management") definierten Sprachen beschränkt. Dies gilt z.B. für den Sprachwahlschalter des Seitenmoduls beim Bearbeiten von Datensätzen und im Listenmodul.

Durch diese neue Funktion ist es für Backend-Benutzer viel einfacher, im Backend mit verschiedenen Sprachen zu arbeiten. TYPO3-Websites ohne Site-Konfiguration funktionieren weiterhin wie bisher. Es wird jedoch empfohlen, die Vorteile zu nutzen und daher auf ein Setup mit einer Standortkonfiguration umzusteigen.

site-language-visible-overviewsite-language-visible

Bedingte Varianten für Formularelemente

Immer mehr Websites nutzen die Erweiterung "Formulare" (auch bekannt als "form framework"), die seit Version 8.5 (Dezember 2016) mit dem TYPO3-Core ausgeliefert wird. Diese Systemerweiterung erhielt mit der Version 9.4 eine weitere großartige Neuerung: bedingte Varianten.

Varianten können Bedingungen enthalten und das Ändern von Eigenschaften eines Formularelements ermöglichen. Auf diese Weise wird es möglich, Formularelementwerte, Prüf- und Finisheroptionen usw. basierend auf Bedingungen zu manipulieren. Einige typische Anwendungsfälle sind:

  • Übersetzen Sie Werte von Formularelementen in Abhängigkeit von der aktuellen Frontend-Sprache.
  • Setzt und entfernt Prüfer in Abhängigkeit vom Wert eines anderen Formelements.
  • Setzt Endwerte gemäß der angegebenen Werte eines Formelements.
  • Ein Formelement mit bestimmten Endwerten auf der Übersichtsseite ausblenden.
  • Ganze Seiten im Workflow ausblenden, abhängig vom Wert eines Formularelements.
  • Und vieles mehr.

Die ausführliche Dokumentation von TYPO3 enthält weitere Details und Beispiele.

Umschalten der Kernfunktionen

In TYPO3 Version 9.1 wurde eine API-Klasse "Features" eingeführt. Diese Klasse bietet eine einfache Möglichkeit, neue Funktionen parallel zu ihrer älteren Version hinzuzufügen. Das Backend-Modul "ADMIN TOOLS → Settings" wurde um eine neue Funktion "Feature Toggles" erweitert, mit der Benutzer Kernfunktionen aktivieren und deaktivieren können. Durch die Verwendung dieser Funktion haben TYPO3-Integratoren und Site-Administratoren die volle Kontrolle darüber, ob und wann sie zu einer neuen Funktion wechseln möchten.

Ein gutes Beispiel sind Projekt-Updates: Site-Manager sind nun in der Lage, neue Funktionen schrittweise und nicht mehr in einem großen Wechsel einzuführen.

feature-toggles

Das Paradies für Entwickler

Jede TYPO3-Version in der Vergangenheit enthielt einige Überraschungen für Entwickler und das Gleiche gilt für die TYPO3-Version 9.4. Das Change Log enthält eine Reihe wertvoller Verbesserungen und neuer Funktionen für Entwickler. Eine brandneue, nützliche Komponente in der Version 9.4 ist zum Beispiel die "Context API".

Das Hauptziel dieses Konzepts ist es, globale Variablen zu zentralisieren. Bislang waren viele Daten aus verschiedenen Bereichen des Systems verstreut. Die Kontext-API zielt darauf ab, diese global verfügbaren Objekte (z.B. TSFE, sys_page, BE_USER) zu ersetzen und sie zu jedem Zeitpunkt des Application/Anforderungs-Lebenszyklus auf gemeinsame, strukturierte und logische Weise verfügbar zu machen. Anstatt ein ganzes Objekt (z.B. das BE_USER-Objekt) freizulegen, enthalten "Aspekte" nur Eigenschaften, die relevant und erforderlich sind.

Die technische Dokumentation enthält weitere Details und Beispiele für die Verwendung der Context API.

Es ist soweit: TYPO3 v9.5 LTS ist endlich da

Seit dem 2. Oktober 2018 können sich Anwender nun auf die Long Time Support Version TYPO3 v9.5 freuen. Die reguläre Maintenance läuft bis zum 30. April 2020, sodass die Version 9.5 bis dahin stets weiterentwickelt und ausgebaut wird.

Was sollten Sie als nächstes tun?

Ihre Website ist die digitale Tür für Ihre Zielgruppe. Über Ihren Auftritt im Web entscheiden Interessenten, ob sie Sie beauftragen wollen oder nicht. Wir beschäftigen uns seit 14 Jahren mit TYPO3 und helfen Ihnen dabei, Ihren idealen Webauftritt zu errichten. Lassen Sie uns über Ihre Herausforderungen bei einem kostenfreien, digitalen Espresso sprechen:

New Call-to-action

Quelle: TYPO3.org