Contao 5.2 - Was ist neu?
Contao 5.2 wird Heute erscheinen und enthält wieder zahlreiche kleine Änderungen.
In diesem Beitrag stelle ich die für Einsteiger, Redakteur*Innen und Entwickler*Innen wichtigsten Neuerungen vor.
Contao 5.2 erhält jetzt Updates bis zum 14.02.2024. Am 15.02.2024 erscheint Contao 5.3 (LTS ab dem 15.08.2024)!
Neues für Redakteur*Innen
Für Redakteur*Innen gibt es diesmal nicht viel Neues...
Neues für Entwickler*Innen
Folgende Änderungen in Contao 5.2 sind für Entwickler*Innen von Bedeutung.
- Zuerst einmal wurden einige kleinere Fehler und Probleme behoben, die hier nicht weiter ausführlich genannt werden sollen. Im CHANGELOG findet Ihr die Auflistung aller Änderungen.
- Das Caching für das 'date'-Insert-Tag wurde verbessert.
Siehe #6194. - Im DC_FOLDER wurde die bisher fehlende Darstellung des Root-Ordners ergänzt.
Siehe: #6124. - System::import() ist ab 5.2 veraltet und wird nicht mehr unterstützt. Zum Import von Callbacks, Hooks und Button Callbacks sowie im Maintenance Module sollte zukünftig nur noch System::importStatic() verwendet werden. System::import() wird langfristig aus Contao entfernt!
Siehe: #6165 und #6163. - 'label_callback', 'header_callback' und 'group_callback' wurden erweitert und können jetzt verkettet (chainable) werden. Außerdem können jetzt mehrere Callbacks als Array übergeben werden.
Siehe #6054. - Die bisherige Art der Kennzeichnung von 'disabled Icons' wurde zum Zweck der besseren Lesbarkeit verändert. Sie bleibt zwar bis Contao 6.0 noch nutzbar, triggert jedoch eine deprecation notice.
Bis 5.1 war es üblich, disabled Icons mit einem Unterstrich _ zu kennzeichnen (z.B. edit_.svg). Zukünftig soll folgendes Schema verwendet werden: edit--disabled.svg oder edit--disabled--dark.svg etc. Siehe: #6156 und auch den folgenden Absatz. - Nach der Erweiterung des Backend-Themes um ein Dark-Theme, wurden für alle Icons in gleicher Weise auch Dark-Icons hinzugefügt. Die Verarbeitung von Dark Icons war bisher jedoch nicht vereinheitlicht und unterstützte keine Dark-Icons aus Erweiterungen. Die PRs #6086 und #6061 ermöglichen jetzt auch für Erweiterungen eine vereinheitlichte Verwendung von Dark-Icons. Das funktioniert, wie bereits im vorhergehenden Punkt angedeutet. Ihr verwendet dafür die Kennzeichnung --dark oder --light. Also z.B. my-icon--dark.svg oder my-icon--light.svg.
- Bei der Definition von Bildgrößen kann jetzt pro Bild ein Parameter für die JPG-Bildqualität angegeben werden, damit diese bei Bedarf für kleine und große Bilder unterschiedlich definiert werden kann.
Siehe #6128.
- Die Konfigurations-Option (hier ein Beispiel)
contao:
image:
preserve_metadata:
exif: { IFD0: [Copyright, Artist] }
iptc: ['2#116', '2#080', '2#115', '2#110']
wurde neu hinzugefügt. Somit kann systemweit festgelegt werden, welche Metadaten bei Fotos erhalten bleiben sollen. Das ist bisweilen lizenzrechtlich von großer Bedeutung.
Siehe #5837.
- Ein neues Accordion wurde implementiert und verwendet jetzt die W3C-konforme Javascript-Bibliothek handorgel.js.
Siehe handorgel.js und #5875. - Es ist jetzt möglich, Module und Inhaltselemente direkt und ohne einen Datenbankzugriff nur unter Angabe der jeweiligen ID via Twig zu rendern. Dazu verwendet man das Makro insert_module(). Beispiel {{ insert_module(15) }}.
Siehe #5808. - Die Methode BackendUser::hasAccess() wurde in den BackendAccessVoter verschoben und ist jetzt im BackendUser als veraltet gekennzeichnet. Die Berechtigung USER_CAN_ACCESS_PAGE wurde hinzugefügt.
Siehe #6008. - Verfügen Nachrichten oder Veranstaltungen über ein primäres Foto, so wird das jetzt automatisch in den Suchergebnissen angezeigt.
Siehe #5849. - Dort, wo Templates zur Auswahl stehen, können sie jetzt auch übersetzt werden.
Vormals sah die Auswahl eines Templates so aus:
Jetzt können die Templates übersetzt werden. Das sieht dann so aus:
Screenshots M-VO.
Die Übersetzung erfolgt durch eine Datei:
# translations/templates.en.yaml content_element/text: 'Default text' content_element/text/special: 'Special text'
Siehe #5717. - Der Combiner wird am Backend nicht mehr unterstützt. Stattdessen wird jetzt Webpack verwendet.
Siehe #5796. - Der AccessVoter kann derzeit lediglich feststellen, ob eine gegebene Berechtigung für eine gegebenes Feld vorliegt (z.B. User->isGranted(ContaoCorePermissions:: USER_CAN_ACCESS_FIELD_TYPE, 'hidden')). Er kann nicht feststellen, ob ein Recht überhaupt gewährt wurde. Durch diesen PR wird der AccessVoter um diese Funktionen erweitert.
Siehe #5805.
Fazit
Contao wird laufend weiterentwickelt. Die neuen Versionen Contao 5.0, Contao 5.1 und Contao 5.2 bringen viele spannende Funktionen mit. Neue Funktionen machen den Einsatz von Contao wesentlich produktiver, in der Administration und in der Redaktion. Der Update-, Umstellungs- und Schulungsaufwand auf die neue Version fällt für die Contao-Agentur und auch in deinem Unternehmen gering aus.
Interesse an einem Update auf Contao 5.2?
Du möchtest ein Contao Update durchführen lassen oder mehr zur Thematik erfahren? Kontaktiere unser Contao-Team.
Hinweise zum Update
In Contao 5.2 wurden auch wieder einige Bugs behoben.
Auch unsere Contao Themes wurden bereits für Contao 5.2 optimiert und stehen pünktlich für den Einsatz zur Verfügung.
MATE Theme ✓
ODD Theme ✓
NATURE Theme ✓
0.1 Theme ✓
CONVERT Theme ✓
Alle Themes und Erweiterungen findest du auch in unserer Übersicht.
Hast du Anmerkungen, Ideen, Fragen oder Lob & Kritik zu Contao 5.2 oder einem Update von Contao 3.5, 4.4, 4.6, 4.7 oder 4.8, 4.9 LTS, 4.10, 4.11, 4.12, 4.13 LTS, 5.0, 5.1 auf Contao 5.2? Wir würden gern hören, was du darüber denkst. Schreib uns einfach auf Facebook, Twitter oder per Formular.
Wenn Dir dieser Artikel gefallen hat, dann wirst du pdir+ webtools lieben! Erfahre mehr, wie du pdir unterstützen² kannst oder schau dir unsere Produkte³ an, lass dir den pdir-Unterschied zeigen!
Links zum Artikel
¹ https://pdir.de/pdir-webtools.html
² https://contao-themes.net/sponsoring.html
³ https://pdir.de/contao-produkte.html
Quellen: Contao 5.2 Changelog https://github.com/contao/contao/blob/5.2/CHANGELOG.md
Häufige Fragen und Antworten
Was bedeutet LTS?
LTS steht für Long Term Support.
Seit der Contao-Version 4.4 LTS wird Contao mit einer regulären Support Laufzeit von 3 Jahren veröffentlicht und in dieser Zeit mit Updates und 4 Jahre mit Sicherheitsupdates unterstützt. Das bedeutet planbare und langfristige Sicherheit für den Websitebetreiber und dadurch seltenere Website-Relaunches.
Die aktuellste LTS Version ist Contao 4.13 LTS, diese wird am 15.02.2024 durch die Contao 5.3 LTS abgelöst.
Was hat das Update mit der DS-GVO zu tun?
Über die Datenschutzgrundverordnung (DS-GVO) ist in Artikel 32 geregelt, dass IT Systeme dem "aktuellen Stand der Technik" entsprechen müssen. Durch Updates und Sicherheitsupdates halten wir Ihr Contao auf dem aktuellsten Stand.
Was kostet ein Contao-Upgrade?
Zur Ermittlung der Kosten des Contao-Updates dient der kostenlose Systemcheck.
Über diesen werden alle relevanten Faktoren mit Ihnen zusammen analysiert und anschließend erstellen wir Ihnen auf dieser Basis ein Angebot.
Die Kosten für die Updates können variieren. Abhängig sind diese in der Regel von drei Faktoren:
1. Der Anzahl der Versionssprünge:
Als Beispiel: Ein Update von der Version 2.x auf die Version 4.13 beinhaltet 3 Versionssprünge:
- Von Contao/Typolight 2.x auf Contao 4.13 LTS
- Von Contao 3.x LTS auf Contao 4.13 LTS
- Von Contao 4.4 LTS auf Contao 4.13 LTS
- Von Contao 4.9 LTS auf Contao 4.13 LTS
- Von Contao 4.13 LTS auf Contao 5.0
- Von Contao 5.0 auf Contao 5.1
- Von Contao 5.1 auf Contao 5.2
Je näher die Ursprungsversion und die Zielversion beieinander liegen, desto geringer sind die Kosten.
2. Die eingesetzten Erweiterungen:
Die Anzahl der eingesetzten Contao Extensions beeinflusst den Aufwand. Wichtiger jedoch ist, ob verfügbare Updates der eingesetzten Extensions existieren.
Je nach dem, ob Extension Updates existieren können diese:
- einfach upgedatet werden
- aufwändig angepasst werden
- oder Alternativen etabliert werden
3. Die Servereinstellungen:
Verwendete Cronjobs, Schnittstellen zu weiteren Systemen, PHP Version und die MYSQL Version
Eine Kostenbewertung ohne Systemcheck ist daher nicht möglich.
Werden die Kosten als Pauschalpreis oder nach Aufwand berechnet?
Unsere Contao Upgrade Angebote sind Pauschalpreise.
Dabei gehen wir von dem Wissenstand zum Zeitpunkt der Angebotsabgabe aus.
Sollten im Zuge der Umsetzung Aufwände anfallen, die nicht vorhersehbar oder zum Zeitpunkt der Angebotsabgabe nicht bekannt waren, werden wir diese selbstverständlich mit Ihnen besprechen und ggf. zur Abrechnung bringen.
Unvorhergesehenes könnten beispielsweise unbekannte Cronjobs sein, über die wir nicht in Kenntnis gesetzt wurden oder Serverproblematiken, für die wir nicht verantwortlich sind.
Contao, PHP, MySQL - auf was muss ich achten?
Jede Contao-Version stellt unterschiedliche Anforderungen an PHP und MySQL. Je älter das verwendete Contao ist, desto älter sind auch die möglichen PHP und MySQL Versionen.
Auf aktuelle Versionen von Contao, PHP und MySQL upzudaten bieten deutliche Performancesteigerungen, so dass sich die Ladezeit der Contao-Website verbessert.
Welche Contao-Version mit welcher PHP und MySQL Version zusammenpassen ist nachfolgend aufgeführt:
Contao Version | PHP Version | MySQL Version |
Contao 2 | PHP 5.2 - 5.6 | MySQL 4.1 |
Contao 3 | PHP 5.3 - 7.4 | MySQL 5.0.3+ |
Contao 4.4 | PHP 5.6 - 7.4 | MySQL 5.1+ / 5.5+ |
Contao 4.9 | PHP 7.2 - 8.1 | MySQL 8.0+ oder gleichwertiger MariaDB Server |
Contao 4.11 | PHP 7.3 - 8.1 | MySQL 8.0+ oder gleichwertiger MariaDB Server |
Contao 4.12 | PHP 7.3 - 8.1 | MySQL 8.0+ oder gleichwertiger MariaDB Server |
Contao 4.13 | PHP 7.4 - 8.1 | MySQL 8.0+ oder gleichwertiger MariaDB Server |
Contao 5.0 | PHP 8.1 - 8.2 | MySQL 8.0+ oder gleichwertiger MariaDB Server |
Contao 5.1 | PHP 8.1 - 8.2 | MySQL 8.0+ oder gleichwertiger MariaDB Server |
Contao 5.3 LTS | PHP 8.1 - 8.2 | MySQL 8.0+ oder gleichwertiger MariaDB Server |
Weitere Systemvoraussetzungen findest du im Contao Handbuch.
*******************
Liebe Leser,
Menschen sind nicht ausschließlich Frauen, Männer, weiblich, männlich, divers – Menschen können vielfältiger sein! Wir möchten euch ALLE als Menschen ansprechen, egal von welchem Geschlecht oder welcher Kultur. Sprachlich ist es schwierig, euch alle „richtig“ anzusprechen. Daher verwenden wir – auch für eine bessere Lesbarkeit – bei Personenbezeichnungen meist die männliche Form, wie Dienstleister oder Partner. Aber eins ist uns wichtig: Keiner soll sich ausgeschlossen fühlen.
Zudem sind wir Verfechter des DU #gernperdu und gestalten so unsere tägliche Kommunikation etwas lockerer und persönlicher. Auch hier gilt: Wir bringen allen die gleiche Wertschätzung entgegen.
*******************