Contao-News
Wir informieren Dich hier regelmäßig zu Updates, stellen Best-Practice-Arbeiten vor und berichten über Aktuelles aus dem Contaoversum.
Contao 3.1.beta1 verfügbar
von Leo Feyer – Ankündigungen
Contao Version 3.1.beta1 ist verfügbar. Verwenden Sie Beta-Versionen nicht für produktive Webseiten! Laden Sie das Release herunter, um zu prüfen, ob Ihre Webseite oder Erweiterung angepasst werden muss.
Nachfolgend sind einige der Highlights der neuen Version genannt. Eine vollständige Liste finden Sie im Changelog bzw. in den geschlossenen Tickets des Release (siehe die Links am Ende der Ankündigung).
Sprachen und Dialekte
In Contao 3.1 werden Dialekte wie z.B. de-CH unterstützt. Diese können sowohl in den Einstellungen einer Website-Startseite als auch als Gebietsschema (dann werden sie de_CH geschrieben!) bei der Übersetzung des Systems verwendet werden.
Drag und Drop fast überall
Kennen Sie die beiden kleinen Pfeile, mit denen sich z.B. im Inhaltselement "Aufzählung" oder im Seitenlayout per Klick Elemente nach oben oder unten schieben lassen? Diese gibt es in Contao 3.1 nicht mehr; sie wurden durch ein Icon ersetzt, mit dem sich die Elemente per Drag und Drop verschieben lassen.
Inhaltselemente-Slider
Ein universeller Inhaltselement-Slider auf Basis von swipe.js wurde hinzugefügt und kann ähnlich wie das Akkordeon-Element verwendet werden: ein Start- und Stopelement umschließen die Inhaltselemente des Sliders und ein "moo_"- bzw. "j_"-Template, das im Seitenlayout eingefügt wird, initialisiert das Skript.
Der Slider unterstützt Wischgesten auf Tablets und mobilen Endgeräten.
Zugriffsschutz für Artikel
In Contao 3.1 können nicht nur Seiten und Inhaltselemente, sondern auch Artikel geschützt werden, so dass nur bestimmte Mitgliedergruppen im Frontend darauf zugreifen können.
TinyMCE Link- und Bilddialog
Wenn in TinyMCE Seiten oder Bilder ausgewählt werden, nutzt das System nun den Contao Seiten- bzw. Dateiwähler anstatt des TinyMCE-Dropdown-Menüs.
Domain-bewusste Navigationsmodule
Zeigte bisher eine Weiterleitungs- oder Referenzseite oder ein Link-Inserttag auf eine Seite in der Seitenstruktur, die zu einem anderen Website-Startpunkt mit einer anderen Domain gehörte, endete der Link in einem 404er-Fehler, weil Contao die Seite unter der aktuellen Domain zu öffnen versuchte. In Contao 3.1 berücksichtigen diese Ressourcen die Domain und leiten zur richtigen Domain, Sprache und Seite weiter.
Modul-Abhängigkeiten
In Contao 3.1 können Module andere Module in ihrer autoload.ini
-Datei als Abhängigkeit definieren. Diese Abhängigkeiten bestimmen dann die Reihenfolge, in der die Module geladen werden. Workarounds wie z.B. die Benennung "zzz_custom" werden dardurch überflüssig.
Inserttag-Flags
Inserttags unterstützen jetzt Flags, um z.B. die Ausgabe an eine PHP-Funktion weiterzugeben.
{{ua::browser|uncached}}
{{page::title|decodeEntities|strtoupper}}
Momentan unterstütze Flags:
uncached
: erhält das Tag beim Schreiben der Cache-Dateirefresh
: erstellt die Ausgabe bei jeder Anfrage neuaddslashes
: fügt bestimmten Zeichen ein "\" hinzustripslashes
: entfernt das "\" vor bestimmten Zeichenstandardize
: standardisiert die Ausgabeampersand
: wandelt Und-Zeichen in Entities umspecialchars
: wandelt Sonderzeichen in Entities umnl2br
: ersetzt Zeilenumbrüche durch <br>nl2br_pre
: erhält die Zeilenumbrüche innerhalb von <pre>-Tagsstrtolower
: wandelt die Ausgabe in Kleinbuchstaben umutf8_strtolower
: Unicode-bewusste Umwandlung in Kleinbuchstabenstrtoupper
: wandelt die Ausgabe in Großbuchstaben umutf8_strtoupper
: Unicode-bewusste Umwandlung in Großbuchstabenucfirst
: wandelt das erste Zeichen in einen Großbuchstaben umlcfirst
: wandelt das erste Zeichen in einen Kleinbuchstaben umucwords
: wandelt das erste Zeichen jedes Wortes in einen Großbuchstaben umtrim
: entfernt Leerzeichen vom Anfang und Ende der Ausgabertrim
: entfernt Leerzeichen vom Anfang der Ausgabeltrim
: entfernt Leerzeichen vom Ende der Ausgabeutf8_romanize
: romanisiert die Ausgabestrrev
: dreht die Ausgabe umencodeEmail
: kodiert E-Mail-Adressen in der AusgabedecodeEntities
: dekodiert Entities in der Ausgabenumber_format
: formatiert eine Zahl (System::getFormattedNumber())currency_format
: formatiert eine Währung (System::getFormattedNumber())readable_size
: wandelt die Ausgabe in ein Menschenlesbares Format um
Verbesserung des Dateisystems
Das Datenbank-gestützte Dateisystem (DBAFS) wurde in vielen Teilen verbessert, um es Anwenderfreundlich und stabiler zu machen.
- Der Dateiwähler zeigt nun das Dateisystem anstatt der Datenbank
- Vom Dateiwähler aus kann man direkt innerhalb des Popups den Dateimanager aufrufen
- Der Dateiwähler fügt die ausgewählten Ressourcen direkt zur Datenbank hinzu
Das bedeutet, dass eine manuell Synchronisation des Dateisystems nicht mehr notwendig ist.
- Ein Navigationpfad erlaubt die Anzeige von Teilbäumen des Seiten- und Dateiwählers
md5_file()
wird nicht mehr auf Dateien angewandt, die größer als 2 GB sind- Der Hash eines Ordners wird nun anhand der Dateinamen anstatt deren Hashes gebildet
- Alle DBAFS-bezogenen Routinen wurden in der Klasse
Dbafs
zentralisiert - Reguläre Benutzer können nun das Recht zur Synchronisation des Dateisystems erhalten
Neue Hooks in Version 3.1
parseWidget
: wird aufgerufen, wenn ein Widget geparst wird.getPageLayout
: wird aufgerufen, nachdem das Layout-Objekt initialisiert wurde.modifyFrontendPage
: wird unmittelbar vor der Ausgabe eines Frontend-Templates aufgerufen.
Der Unterschied zwischen dem modifyFrontendPage
-Hook und dem outputFrontendPage
-Hook ist, dass die Inserttags und die dynamischen Skripttags bereits ersetzt wurden, wenn der modifyFrontendPage
-Hook ausgeführt wird.
Siehe auch: GitHub-Tickets | GitHub-Compare View | Contao-Changelog | Release-Übersicht
Kommentare
Einen Kommentar schreiben