TYPO3 9 LTS
TYPO3 9 LTS wurde am 2. Oktober 2018 veröffentlicht. Auf dieser Seite gibt es Informationen zu den Neuerungen

Am 2. Oktober 2018 wurde TYPO3-Version 9 LTS mit der Versionsnummer 9.5.0 veröffentlicht. Auf dieser Seite informieren wir über die neuen Features und Änderungen gegenüber den früheren Versionen.
Aktuell: in den Versionen 9.5.0 und 9.5.1 gibt es noch eine Reihe von Fehlern, die Probleme in einigen Installationen verursachen. Wir hoffen, dass diese mit Erscheinen der Version 9.5.2 behoben werden, so dass wir TYPO3 9.5 unbeschränkt für den produktiven Einsatz empfehlen können.
TYPO3 Version 9 Roadmap
Roadmap
Version | Schwerpunkt der Entwicklung | Erscheinungsdatum |
---|---|---|
9.0 | Mehrsprachigkeit, Refactoring Install Tool und Seitenbaum | 12. Dez.2017 |
9.1 | Redirect Handling | 30. Jan. 2018 |
9.2 | Site Handling | 10. Apr. 2018 |
9.3 | SEO und Vorbereitungen für URL Routing für Seiten (Ersatz für RealURL) | 12. Jun 2018 |
9.4 | URL Routing für Seiten und SEO-Verbesserungen | 04. Sep. 2018 |
9.5 | Freigabe der Version 9 LTS | 02. Okt. 2018 |
Version 9.5.0 (LTS Release, 02.10.2018)
Die LTS-Version 9.5.0 wurde am 2. Oktober 2018 veröffentlicht. Einige der wichtigsten Neuerungen zählen wir hier auf.
Static Routes
Das Site-Konfigurationsmodul verfügt nun über Optionen, um statische Routen für jede Website hinzuzufügen.
Beispiel 1: In einer Installation mit mehreren Websites (Multidomain) möchten Sie verschiedene robots.txt-Dateien für jede Site haben, diese sollen bei jeder Domain über /robots.txt erreichbar sein. Sie können nun eine statische Route "robots.txt" zu Ihrer Website hinzufügen und definieren, welche Inhalte geliefert werden sollen.
Beispiel 2: Die TYPO3 SEO Extension bietet eine Sitemap für TYPO3 out of the box, ist aber nur für einen bestimmten Seitentyp erreichbar.
Um den Zugriff zu erleichtern, können Sie nun eine statische Route "sitemap.xml" konfigurieren, die auf diesen Seitentyp abgebildet wird.
Routen können als Toplevel-Dateien konfiguriert werden (wie im Fall "sitemap.xml" und "robots.txt"), können aber auch zu tieferen Ebenen führen (z.B. "my/deep/path/to/a/static/text").
Site-Konfiguration per TypoScript auswerten
Die Paramter der Site-Konfiguration können per TypoScript getText ausgelesen werden.
Beispiel:
page.10 = TEXT
page.10.data = site:base
page.10.wrap = This is your base URL: |
In der config.yaml der Site-Konfiguration lassen sich auch benutzerdefinierte Werte anlegen. So kann man beliebige Werte pro Site speichern und im TypoScript nutzen.
Route Enhancers und Aspects
TYPO3 9 kann ohne zusätzliche Extensions out-of-the-box lesbare und suchmaschinenfreundliche URLs generieren. Das funktioniert jetzt auch für Extensions wie z.B. news oder andere Extbase-Extensions.
Da die Dokumentation zu diesem Feature sehr umfangreich ist, verweisen wir hier auf die offizielle Dokumentation.
Varianten für den Einstiegspunkt einer Website
Der Einstiegspuntkt (Entry Point) einer Website entspricht ungefähr dem, was bisher der Domain Record im Backend war. Über die Varianten kann man auf verschiedene Parameter reagieren.
Beispiel: die Live-Seite nutzt die Domain domain.de, die Test-/Staging-Domain aber staging.domain.de.
Hier kann man dann z.B. über den Application Context die passende Variante "aktivieren". (Dokumentation)
Automatisch generiertes Canonical-Tag
Sofern die neue System-Extension "seo" aktiv ist, wird automatisch ein Canonical-Tag im HTML-Quelltext erzeugt.
Bei Bedarf kann die URL dafür in den Seiteneigenschaften pro Sprache manuell überschrieben werden.
Achtung: bei Verwendung von weiteren SEO-Extensions, die ebenfalls ein Canonical-Tag erzeugen, sollte man sicherstellen, dass das Tag nur einmal im Quelltext generiert wird.
Mitgelieferte .htaccess/web.config Dateien in anderem Verzeichnis
TYPO3 liefert fertige Konfigurationsdateien für die Webserver Apache (_.htaccess) und IIS (_web.confg) mit, die bei der Installation automatisch erzeugt werden.
Benötigt man diese Vorlagen jedoch trotzdem einmal, findet man Sie jetzt in anderen Verzeichnissen:
- typo3/sysext/install/Resources/Private/FolderStructureTemplateFiles/root-htaccess (Apache)
- typo3/sysext/install/Resources/Private/FolderStructureTemplateFiles/root-web-config (IIS)
utf8mb4 als Standard für neue Installationen
Wenn Sie TYPO3 manuell installieren und die MySQL-Datenbank über das Installtool erstellen, wird "utf8mb4" als Charset und "utf8mb4_unicode_ci" als Kollation verwendet.
Bei Upgrades können Sie dieses Features manuell in der LocalConfiguration.php aktivieren, müssen aber auch dafür sorgen, dass die MySQL-Datenbank entsprechend angepasst wird. Dies geschieht nicht automatisch.
Beispiel für die LocalConfiguration.php (Ausschnitt):
'DB' => [
'Connections' => [
'Default' => [
'driver' => 'mysqli',
...
'charset' => 'utf8mb4',
'tableoptions' => [
'charset' => 'utf8mb4',
'collate' => 'utf8mb4_unicode_ci',
],
],
],
],
Verzeichnis für Sprach-Dateien geändert
Heruntergeladene XLF-Sprachdateien werden normalerweise im Verzeichnis "typo3conf/l10n" gespeichert.
Wenn die Umgebungsvariable "TYPO3_PATH_ROOT" gesetzt ist, die für alle Composer-basierten Installationen gilt, werden die XLF-Sprachdateien
außerhalb des Document Roots im Verzeichnis "var/labels/" abgelegt.
Alte TypoScript Condition-Syntax "deprecated"
In TYPO3 9 wird die "Symfony Expression Language" für TypoScript-Conditions verwendet. Im Zuge dessen wurde die bisherige Syntax als "veraltet" gekennzeichnet. Man kann in TYPO3 9 zwar noch die alte Syntax nutzen, mit TYPO3 10 wird das aber nicht mehr möglich sein.
Man sollte also bereits jetzt alle TypoScript-Conditions auf die neue Syntax umstellen.
Weitere Änderungen im ChangeLog
Wir haben hier nur einen Bruchteil aller Änderungen aufgeführt. Viele Funktionen wurde in dieser Version auch als veraltet eingestuft und werden mit der nächsten TYPO3-Version dann auch aus dem System entfernt.
Wir empfehlen daher unbedingt das Studium aller Änderungen im "TYPO3 CMS Core ChangeLog".
Version 9.4.0 (Sprint Release 04.09.2018)
Version 9.4.0 wurde am 04.09.2018 veröffentlicht. Die größte Neuerung in diesem Release war die Möglichkeit, lesbare, suchmaschinenfreundliche URLs "out of the box" zu generieren. In Zukunft werden also Extensions wie z.B. RealURL oder CoolURI wahrscheinlich nicht mehr nötig sein.
Im folgenden Video zeigen wir ein paar der auffälligsten Neuerungen dieser Version.
Extension "Documentation" entfernt
Über die System-Extension "Documentation" war es möglich, Core- oder Extension-Dokumentationen direkt in das Backend zu laden und dort zu lesen.
Da diese Extension von der Mehrheit der Anwender nicht wirklich genutzt wurde und einen erheblichen Wartungsaufwand erforderte, wurde sie ersatzlos gestrichen. Alle Dokumentationen findet man nach wie vor auf docs.typo3.org.
Seitenbasierte URL-Generierung
Out-of-the-box werden URLs für Seiten nun automatisch als lesbare, suchmaschinenfreundliche URLs generiert. Damit sollen in Zukunft Extensions wie RealURL oder CoolURI unnötig werden.
Momentan funktioniert das nur für normale Seiten, in Zukunft sollen aber auch die URLs für Extensions wie z.B. news darüber generiert werden.
Damit das funktioniert, ist es notwendig, über das neue "Sites"-Backendmodul eine Konfiguration für die Website anzulegen.
Unterstützung von SQLite
TYPO3 kann nun mit SQLite als Alternative zu MySQL installiert werden. SQLite ist eine dateibasierte, leichtgewichtige SQL-Datenbank.
Die TYPO3-Datenbank wird dabei in einer einzelnen Datei gespeichert. Das macht unter Umständen Sinn für kleine Webseiten oder für Test- und Entwicklungsumgebungen.
XML Sitemap
Es ist nun möglich, XML-Sitemaps für SEO-Zwecke ohne Plugins von Drittanbietern zu generieren.
Wenn diese neue Funktion aktiviert ist, wird ein Sitemap-Index mit einer oder mehreren Sitemaps erstellt. Out fo the box wird eine Sitemap mit allen Seiten der aktuellen Website und Sprache generiert.
Pro Seite und pro Sprache kann eine andere Sitemap gerendert werden.
Um die Sitemap zu aktivieren, muss das statische TypoScript-Template "XML Sitemap (seo)" eingebunden werden.
Außerdem ist es notwendig, über das Sites-Backendmodul eine Site zu konfigurieren.
Anschließend kann die Sitemap über einen eigenen Page-Type aufgerufen werden, zum Beispiel https://name-der-domain.de/?type=1533906435
Die Sitemap kann auch für Datensätze, zum Beispiel aus der news-Extension, erweitert werden. Eine Beispielkonfiguration findet man in der entsprechenden Upgrade-Dokumentation (im Backendmodul nach "sitemap" suchen).
Weitere Änderungen
Es gibt noch viele weitere Änderungen, die für Integratoren und Entwickler relevant sind. Eine detaillierte Auflistung aller Änderungen findet sich im Backend-Modul "Upgrade" hinter dem Button "Upgrade Documentation".
Außerdem zeigen die "What's news"-Slides übersichtlich und mit Code-Beispielen alle relevanten Änderungen.
Version 9.3.0 (Sprint-Release 12.06.2018)
Der Version TYPO3 9.3.0 wurde am 12.06.2018 veröffentlicht.
Der Fokus dieses Sprint-Releases lag auf neuen integrierten SEO-Features, Verbesserungen bezüglich der DSGVO (GDPR) und allgemein auf erhöhter Sicherheit.
Ein paar der neuen Features stellen wir hier vor, detaillierte Informationen sind in der <link https: typo3.org article typo3-v930-released>Pressemitteilung zu finden.
Neue Features
SEO-Felder in den Seiteneigenschaften und Ausgabe der Meta-Tags
In den Seiteneigenschaften gibt es einen neuen Reiter "SEO". Hier lässt sich zum Beispiel der Browser-Titel unabhängig vom Seitentitel verändern, das robots-Meta-Tag kann eingestellt werden (index, follow) und es lassen sich für Facebook und Twitter unabhängige Titel, Bilder und Beschreibungen hinterlegen.
Diese zusätzlichen Meta-Tags werden auch direkt in den HTML-Quelltext des Frontends ausgegeben.
Automatische Erkennung der Sprachen für das Language-HMENU
Über die Eigenschaft special = language des HMENU-cObjects kann man schon seit langem ein Sprachumschalt-Menü generieren.
Bisher musste man die IDs der anzuzeigenden Sprachen direkt in der value-Eigenschaft hinterlegen.
Die neue Option "auto" übernimmt die Sprachen, die im neuen Backend-Modul "Site Configuration" für die jeweilige Site erzeugt wurden.
Beispiel:
10 = HMENU
10 {
special = language
special.value = auto
}
Neue TypoScript-Conditions für Site und Site Language
Es wurden zwei neue TypoScript-Conditions hinzugefügt, die auf die neue Site Configuration reagieren können.
Condition auf den Site-Identifier:
[site = identifier = someIdentifier, base = https://www.typo3.org/]
page.30.value = fo
[global]
Condition auf die Site-Sprache:
[siteLanguage = locale = de_CH.UTF-8, title = Switzerland]
page.40.value = bar
[global]
Fluid Data-Processor für Sprachmenüs
Sprachmenüs können über den neuen LanguageMenuProcessor mit Fluidtemplates erzeugt werden, basierend auf den für die Website definierten Sprachen.
10 = TYPO3\CMS\Frontend\DataProcessing\LanguageMenuProcessor
10 {
languages = auto
as = languageNavigation
}
<f:if condition="{languageNavigation}">
<ul id="language" class="language-menu">
<f:for each="{languageNavigation}" as="item">
<li class="{f:if(condition: item.active, then: 'active')}{f:if(condition: item.available, else: ' text-muted')}">
<f:if condition="{item.available}">
<f:then>
<a href="{item.link}" hreflang="{item.hreflang}" title="{item.navigationTitle}">
<span>{item.navigationTitle}</span>
</a>
</f:then>
<f:else>
<span>{item.navigationTitle}</span>
</f:else>
</f:if>
</li>
</f:for>
</ul>
</f:if>
Durchsuchbare Meta-Daten in der Dateiverwaltung
Die Suche in der Dateiverwaltung durchsucht jetzt auch zusätzlich die Felder "description" und "alternative".
Bildrotation aus EXIF-Daten auswerten
Sofern in den EXIF-Daten hochgeladener Fotos die Bildorientierung gespeichert ist, wird diese jetzt berücksichtigt und die Bilder entsprechend rotiert.
Wichtige Änderungen
Der Aufruf von Core-TypoScript mit der Dateiendung .txt wird verworfen
Die Dateiendungen aller Core-TypoScript und -TSconfig-Dateien wurden geändert.
TypoScript => .typoscript
TSconfig => .tsconfig
Wenn man also im eigenen TypoScript Core-Dateien einbindent, müssen die Endungen entsprechend angepasst werden.
Beispiel:
<INCLUDE_TYPOSCRIPT: source="FILE:EXT:form/Configuration/TypoScript/setup.txt">
<INCLUDE_TYPOSCRIPT: source="FILE:EXT:fluid_styled_content/Configuration/TypoScript/constants.txt">
muss geändert werden zu:
<INCLUDE_TYPOSCRIPT: source="FILE:EXT:form/Configuration/TypoScript/setup.typoscript">
<INCLUDE_TYPOSCRIPT: source="FILE:EXT:fluid_styled_content/Configuration/TypoScript/constants.typoscript">
youtube-nocookie.com als Standard-Domain für Youtube-Videos
Bei der Einbindung von Youtube-Videos über das "Text & Medien"-Contentelement wird jetzt standardmäßig die Domain youtube-nocookie.com verwendet. Diese Änderung ist eine Anpassung an die Erfordernisse der DSGVO.
Soll die bisherige Domain youtube.com verwendet werden, muss dies allerdings aktiv konfiguriert werden:
lib.contentElement {
settings {
media {
additionalConfig {
no-cookie = 0
}
}
}
}
Weitere Änderungen
Eine komplette Liste der Änderungen findet sich im <link https: docs.typo3.org typo3cms extensions core latest changelog index.html>ChangeLog zur Version 9.3.0.
Version 9.2.0 (Sprint-Release 10.04.2018)
Der Version TYPO3 9.2.0 wurde am 10.04.2018 veröffentlicht.
Die Sprint-Version konzentriert sich auf das sogeannte "Site Handling" und wird die Produktivität der Redakteure erhöhen, die Kreativität der Entwickler fördern und das Leben der Integratoren erleichtern.
Site Handling
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 eine oder mehrere Websites hinzufügen und ändern.
Eine Website-Konfiguration hat eine eindeutige (von Menschen lesbare) Kennung und Konfigurationswerte wie die Root-Page-ID, den Basispfad (Einstiegspunkt), 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.
Debugging und Profiling
Das bekannte "TYPO3 Admin Panel" bietet einen tieferen Einblick in die internen Prozesse von TYPO3 zur Laufzeit. 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 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 Re-Design und weitere neue Funktionen. Bessere Profiling-Möglichkeiten und die Möglichkeit, eigene Funktionen über eine API hinzuzufügen, sind nur zwei der geplanten Verbesserungen.
Bitte beachten Sie, dass das (neue) Admin Panel im Extension Manager aktiviert werden muss, sobald Sie eine bestehende TYPO3-Instanz auf Version 9.2 aktualisiert haben.
Eine weitere Neuerung für TYPO3-Integratoren und Entwickler ist die Tatsache, dass die Werte von Feldern im Backend angezeigt werden. Die Bezeichnungen von Dropdown-Box-Elementen stellen oft nicht eindeutig die Werte dar, die in die Datenbank geschrieben werden. Ein gutes Beispiel sind CSS-Klassennamen: Wenn Editoren aus einer Liste von Optionen in einer Dropdown-Box wählen können, könnten die Bezeichnungen "Lineal vorher" oder "Einrücken, 33%/66%" sein. Das sind natürlich nicht die Werte, die in der Datenbank gespeichert werden, sondern "ruler-before" oder "indent-left".
Wenn der Backend-Debug-Modus aktiviert ist ([BE][debug] = 1), werden die tatsächlichen Werte von Feldern in eckigen Klammern für Backend-Benutzer mit Administratorrechten angezeigt. Damit wird die kürzlich eingeführte Möglichkeit der Anzeige von Feldnamen noch weiter verbessert
TBD: SCREENSHOTS
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 Queue-Funktionalität von SwiftMailer - auch "Spool-Transport" genannt - zu nutzen. In den meisten Fällen wollen Entwickler E-Mails sofort versenden, aber unter bestimmten Umständen ist das "Spoolen" von E-Mails und deren spätere Verarbeitung, z.B. aus Performancegründen, vorteilhaft. Die Mail-API von TYPO3 Version 9.2 unterstützt nun die "SpoolTransport"-Funktionalität von SwiftMailer.
Mails können im Speicher gehalten (und nur dann gesendet werden, wenn der HTTP-Request keine Ausnahme oder Fehler verursacht hat) oder in Dateien gespeichert werden. In letzterem Fall 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.
Verbesserungen für Redakteure
Zwei Neuerungen in TYPO3 9.2 gibt es speziell für die Zielgruppe der Redakteure.
Ein Inhaltselement auf einer Seite kann oft als Vorlage für andere, sehr ä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 sollten oder nur geringfügige Anpassungen erfordern. In diesen Fällen ist es sinnvoll, das vorhandene Element zu klonen, was bereits mit "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.
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.
Version 9.1.0 (Sprint Release 30.01.2018)
Version 9.1.0 wurde am 30.01.2018 als weiteres Sprint-Release veröffentlicht.
Diese Version enthält mehr als 70 Fehlerbehebungen, fast 100 fertiggestellte Entwicklungs-Tasks und einige neue Features.
Hier finden Sie ein paar der Neurungen und Änderungen.
Neue Features
Seitenbaum-Übersicht im Info-Modul: Felder per TSconfig konfigurierbar
mod.web_info.fieldDefinitions {
0 {
label = LLL:EXT:info/Resources/Private/Language/locallang_webinfo.xlf:pages_0
fields = title,uid,alias,starttime,endtime,fe_group,target,url,shortcut,shortcut_mode
}
1 {
label = LLL:EXT:info/Resources/Private/Language/locallang_webinfo.xlf:pages_1
fields = title,uid,###ALL_TABLES###
}
2 {
label = LLL:EXT:info/Resources/Private/Language/locallang_webinfo.xlf:pages_2
fields = title,uid,table_tt_content,table_fe_users
}
}
Feldname neben Titel anzeigen im Debug-Modus
Wenn der Debug-Modus aktiv und man als Administrator im Backend angemeldet ist, wird neben jedem Eingabefeld der Name des Feldes in der Datenbank angezeigt. Bisher war dazu entweder ein Blick in den HTML-Quelltext des Backends oder direkt in die Datenbank notwendig.
Gerade für Integratoren und Entwickler ist dies ein sehr praktisches Feature!
Hooks ausführen sobald sich ein Backend-Benutzer anmeldet
Sobald sich ein Benutzer erfolgreich am Backend anmeldet, können zuvor registrierte Hooks ausgeführt werden. Zum Beispiel könnten Benachrichtigungen oder ähnliches angezeigt werden.
Neue System-Extension "redirects"
Die neue System-Extension "redirects" bietet eine flexible Handhabung der HTTP-Umleitungen. Dies ist sowohl für Administratoren als auch für das Marketing nützlich.
Im neuen Backend-Hauptmodule "Site Management" findet man das neue Modul "Redirects". Hier lassen sich Umleitungen anlegen und verwalten.
Nützlich kann das z.B. sein, wenn sich die URL einer Website geändert hat (z.B. durch Umstruktierung des Contents oder einen Relaunch) oder kurze, prägnante URLs für Werbekampagnen/Landingpages generiert werden sollen.
Global kann optional eine "Hit"-Statistik für die Redirects aktiviert werden, also wie oft die Redirects angesprungen werden. Normalerweise verwendet man dazu allerdings eher Tools wie Google Analytics oder Matomo (Piwik). Beachten sollte man auch, das jeder Hit ein zusätzliches UDATE-SQL-Query auslöst. Auf gut besuchten Seiten könnte das ein Performance-Problem werden!
Aktiviert werden kann die Statistik über die folgende Einstellung:
'SYS' => [
'features' => [
'redirects.hitCount' => true
],
],
Breaking Changes
Redirect-Funktionalität aus dem Domain-Record in das neue Redirects-Modul verschobe
Bisher konnte man in einem Domain-Record (Datenbanktabelle sys_domain) einen Redirect definieren. Diese Funktionalität wurde in das neue Redirects-Modul verlagert, die Daten werden in der neuen Datenbank-Tabelle sys_redirect gespeichert.
Bei einem Upgrade auf TYPO3 9.1 wird ein Upgrade-Wizard für die Datenmigration ausgeführt.
Deprecations
System-Extension rsaauth
Die Extension rsaauth wurde das "deprecated" markiert. Grund war der mangelhafte Effekt dieser Extension auf die Sicherheit der Website. Denn nur die Übermittlung des Passworts wurde dabei verschlüsselt.
Es wird ganz klar empfohlen, alle Seiten, die sensible Daten, vor allem Passwörter, übermitteln, mit einem SSL-Zertifikat zu schützen, damit sämtliche Daten verschlüsselt übertragen werden.
T3D-Export/Import (Ext:impexp)
Folgende Parameter wurden entfernt:
- Maximale Anzahl zu exportierender Datensätze
- Maximale Dateigröße zu exportierender Dateien
- Überprüfung der Dateigröße während des Importvorgangs
Weitere Details finden sich wie immer im Changelog sowie der offiziellen Pressemitteilung.
Version 9.0 (Sprint Release 12.12.2017)
Neuer Systemwartungs-Bereich
Auffällig sind einige neue Backend-Module im Bereich der "Admin-Tools". Folgende Module sind hinzugekommen:
- Maintenance
- Settings
- Upgrade
- Environment
Dabei handelt es sich um die Bereiche, die bisher im Installtool zu finden waren. Das Installtool wird mit TYPO3 9 besser in das Backend integriert sein. Auch das Design wurde an das Backend angepasst.
Wenn man als Administrator im Backend angemeldet ist, ist ein weiterer Login am Installtool übrigens nicht mehr notwendig.
In den einzelnen Modulen findet man die größtenteils schon bekannten Unterpunkte wie z.B. den Database Analyzer oder die Upgrade Wizards.
An der Usability wurde ebenfalls gearbeitet, wo bisher viele Klicks notwendig waren, um zum Beispiel die Tests zur Grafikverarbeitung auszuführen, ist jetzt nur noch ein Klick notwendig, um alle Tests zu starten.
Neu hinzugekommen ist z.B. der Extension Scanner, der alle installierten Extensions auf veraltete Funktionsaufrufe überprüft und somit eine wertvolle Hilfe bei Upgrades oder der Entwicklung eigener Extensions sein kann.
Ebenfalls neu ist die Möglichkeit, einzelne Admin-User als sogenannte "System Maintainer" festzulegen. Sofern man hier mindestens einen Admin-User festlegt, haben nur noch die Mitglieder dieser Gruppe vollständingen Zugriff auf die Bereiche des Install-Tools.
Somit ist eine Unterteilung zwischen Administratoren und Super-Administratoren möglich, ein Konzept, dass man auch schon aus anderen Systemen kennt.
Natürlich ist auch weiterhin der direkte Zugriff auf das Installtool möglich, falls ein Zugriff auf das Backend nicht mehr möglich ist. Hier muss man sich dann, wie bisher auch, mit dem Installtool-Passwort anmelden sowie dafür sorgen, dass im Verzeichnis typo3conf/ die Datei ENABLE_INSTALL_TOOL existiert.
Neue Features
Anzeige ungenutzter Inhaltselemente
Wechselte man auf einer Seite mit vorhandenen Inhalten das Backend-Layout, konnte es vorkommen, dass Inhalte scheinbar danach nicht mehr vorhanden waren. Das lag daran, dass in dem neuen Backend-Layout ein Inhaltsbereich mit der gleichen Spalten-ID (colPos) nicht vorhanden war.
Natürlich konnten diese scheinbar verschwundenen Inhalte jederzeit über die Listen-Ansicht wieder manuell in die richtige "Spalte" verschoben werden.
In TYPO3 9 wird es eine neue Ansicht für die ungenutzten Elemente (unused elements) geben. Sobald ein Inhaltselement mit einer falschen Spaltenzuordnung entdeckt wird, erhält der Benutzer sowohl einen Text-Hinweis, wie auch die Möglichkeit, die falsch zugeordneten Elemente einfach per Drag'n Drop in die richtige Spalte zu verschieben.
Größe der Thumbnails in der Dateiliste konfigurierbar
Im Dateilistenmodul kann man sich kleine Vorschaugrafiken (Thumbnails) von Bildern oder PDF-Dokumenten anzeigen lassen.
Diese Thumbnails wirken besonders heutzutage auf großen Monitoren recht klein, auch Benutzer mit einer Sehschwäche tun sich eventuell schwer, die kleinen Bilder zu erkennen.
Mit zwei neuen Optionen im UserTSConfig lassen sich die Breite und/oder Höhe der Thumbnails beliebig anpassen.
## Größe der Thumbnails in der Dateiliste
options.file_list.thumbnail.width = 256
options.file_list.thumbnail.height = 256
Buttons für den Übersetzungsmodus deaktivierbar
Seit TYPO3 8.7 hat man beim Anlegen von Übersetzungen für Inhaltselemente die Wahl, ob man eine Übersetzung anlegen möchte (mit dem Original verknüpft), oder eine Kopie für die Übersetzung anlegen möchte (vom Original unabhängig).
In TYPO3 9 kann man bei Bedarf diese Buttons per Page- oder UserTSConfig deaktivieren, wenn man nur einen Modus zulassen möchte.
Die folgenden Optionen würden nur den Kopieren-Modus zulassen:
## Buttons für Übersetzungen deaktivieren
mod.web_layout.localization.enableCopy = 1
mod.web_layout.localization.enableTranslate = 0
Überarbeitetes Anzeigen-Backendmodul
Das Backendmodul "View" (Anzeigen) wurde überarbeitet. Es stehen neue Geräte-Presets zur Verfügung, sowie ein Button, um zwischen Hoch- und Querformatsansicht umzuschalten. Natürlich lässt sich die Größe des Viewports auch weiterhin manuell einstellen.
Eigene Presets lassen sich per TSConfig hinzufügen.
Confirmation-Finisher für die Form-Extension
Der Confirmation-Finisher, mit dem nach dem Senden eines Formulars eine Nachricht angezeigt werden kann, ist jetzt direkt im Form-Editor auswähl- und konfigurierbar. Es kann eine einfache Textzeile oder ein (auf einer anderen Seite abgelegtes) Inhaltselement angezeigt werden.
Bisher konnte dieser Finisher nicht direkt im Backend ausgewählt, sondern musste per YAML konfiguriert werden.
CSS inline rendern
Mittels eines neuen Parameters im TypoScript kann man CSS "inline" rendern lassen. Das bedeutet, dass CSS wird nicht als separate Datei geladen, sondern direkt in den durch TYPO3 erzeugten HTML-Quellcode eingefügt. Für die Performanceoptimierung einer Website kann dies sehr interessant sein, vor allem in Verbindung mit compressCss und concatenateCss
Beispiel:
config.compressCss = 1
config.concatenateCss = 1
page.includeCSS {
normalize = EXT:mysitepackage/Resources/Public/Css/normalize.css
normalize.inline = 1
}
Neue Syntax für TypoScript Inkludes
Die Syntax zur Einbindung von TypoScript-Dateien wurde vereinfacht und an andere (Programmier)Sprachen angepasst.
Bisher konnte TypoScript so inkludiert werden:
## einzelne Datei inkludieren
<INCLUDE_TYPOSCRIPT: source="FILE:EXT:mysitepackage/Configuration/TypoScript/Modules/my_settings.typoscript">
## Alle Dateien mit der Dateiendung .ts aus einem Verzeichnis inkludieren
<INCLUDE_TYPOSCRIPT: source="DIR:EXT:mysitepackage/Configuration/TypoScript/Modules/" extension="typoscript">
Die neue Syntax ist sehr viel einfacher zu merken und flexibler:
## Einzelnde Datei inkludieren
@import 'EXT:mysitepackage/Configuration/TypoScript/randomfile.typoscript'
## Alle Dateien mit der Dateiendung .typoscript aus einem Verzeichnis laden
## Sortierung erfolgt alphabetisch nach Dateiname
@import 'EXT:mysitepackage/Configuration/TypoScript/*.typoscript'
## Alle Dateien eines Verzeichnisses laden, unabhängig von der Dateiendung
@import 'EXT:mysitepackage/Configuration/TypoScript/'
Wichtige Änderungen
css_styled_content aus dem Core entfernt
Die bisherige System-Extension css_styled_content wird bei einem frischen TYPO3 9 nicht mehr mit an Bord sein. fluid_styled_content ist der direkte Ersatz dafür. Allerdings wird css_styled_content in das TYPO3 Extension Repository (TER) ausgelagert werden und kann bei Bedarf manuell oder während des Upgrades nachinstalliert werden.
JSMENU entfernt
Der Menütyp JSMENU wurde ersatzlos entfernt. Dieser Menütyp wurde seit Jahren nicht mehr weiterentwickelt und wird heutzutage eigentlich auch nicht mehr benötigt.
Funktionen Backendmodul entfernt
Über das Funktionen-Backendmodul konnte man die Assistenten zur gleichzeitigen Erzeugung mehrerer Seiten oder zur Sortierung vorhandener Seiten starten
Diese beiden Assistenten lassen sich jetzt direkt über das Kontextmenü im Seitenbaum aufrufen. Bei Bedarf kann das Funktionen-Modul jedoch nachinstalliert werden, es steht bereits jetzt als Extension "func" im TER zur Verfügung.
Überarbeiteter t3editor
Der t3editor, mit dem man TypoScript im Backend mit Syntaxhighlighting und Autovervollständigung bearbeiten kann, wurde komplett überarbeitet.
Eine wichtige Änderung: das Autovervollständigen, das bisher automatisch bei Eingabe eines Punktes ausgelöst wurde, muss jetzt manuell durch die Tastenkombination ctrl+space (Mac) bzw. strg+space (Win) ausgelöst werden.
Sonstige Änderungen
Vereinfachtes Standard-Backendlayout
Ein Überbleibsel aus alten TYPO3-Zeiten waren die 4 Inhaltsspalten "Links", "Normal", "Rechts" und "Rand", die bei einem frisch installierten TYPO3 auf jeder Seite angezeigt wurden.
Allerdings gingen diese Inhaltsspalten in der Regel an den tatsächlichen Anforderungen eines Webprojekts vorbei, und spätestens mit der Einführung der Backend-Layouts in TYPO3 4.5 war es sehr einfach, eigene, auch komplexere Layouts zu erstellen.
Als Konsequenz wurde das Standard-Backendlayout jetzt vereinfacht und stellt nur noch eine Inhaltsspalte (colPos = 0) dar. Natürlich lassen sich auch weiterhin beliebige Layouts mit eigenen Backend-Layouts umsetzen.
Neues Verhalten bei Drag'n Drop im Seitenbaum
Dies waren natürlich nur ein paar der bisherigen Änderungen in TYPO3 9.0.0. Unter der Haube hat sich noch viel mehr getan, was auch für Entwickler interessant ist. Detailiert kann man das in den commit messages auf Github einsehen.
Über Änderungen informiert bleiben
Es gibt mehrere Wege, über Änderungen während der Entwicklung von TYPO3 9 LTS auf dem laufenden zu bleiben.
Eine Möglichkeit ist der Twitter-Account t3git_master, der automatisiert alle Änderungen am TYPO3-Code twittert, inklusive Link zu der entsprechenden Commit-Message auf Github, in der man dann Details zu der Änderung nachlesen kann.
Einfacher ist aber sicher die integrierte Upgrade-Dokumentation im neuen Installtool von TYPO3. Das entsprechende Modul wurde bereits in TYPO3 8 LTS als "Upgrade Analyzer" eingeführt und für die Version 9 umbenannt und überarbeitet. Hier kann man sich alle Änderungen inklusive Beschreibungen anzeigen lassen.