Typo3 9.5 LTS – Die Neuerungen

Lange haben wir darauf gewartet – nun ist sie endlich verfügbar: Die neue LTS Version von Typo3 in der Version 9.5.

Sprechende URLs (Speaking Urls)

Typo3 9 LTS kommt mit ein paar wirklich nützlichen Features. Als wichtigste Neuerung ist wohl die Funktion „Speaking Urls“ hervorzuheben. Es ist nun ohne zusätzliche Plugins (wie z.B. RealURL) möglich, schöne Urls zu generieren – diese Funktion wurde nämlich mit Typo3 9.5 endlich in den Typo3 Core integriert.

Suchmaschinenoptimierung (SEO)

Neben der schönen Generierung von Urls, das ja für Suchmaschinenoptimierung auch wichtig ist sind auch weitere Maßnahmen in dieser Richtung umgesetzt worden.

Es wurde den Seiteneigenschaften ein eigener Reiter für dieses Thema spendiert – dieser vereint schon vorhandene Felder mit neuen. Es gibt eine neue Meta-Tag-API sowie eine Seitentitel-API, ebenso können XML-Sitemaps generiert werden.

Site Management

Im neuen Modul „Sites“ können Einstellungen für Sprachen, Einstiegspunkte, Redirects u.v.m. für einzelne Sites innerhalb der Typo3 Installation definiert werden.

Systemwartung

Das „Install Tool“ wurde nun komplett in das Typo3 Backend integriert – und in 4 neue Module aufgeteilt:

  • Maintenance
  • Settings
  • Upgrade
  • Environment

Fazit

Alles in allem finde ich, dass die neue LTS Version Typo3 9.5 ein sehr gelungenes Update ist. Es wartet mit ein paar echten Verbesserungen auf – ich werde wohl mit demnächst mit passenden Projekten die ersten Upgrades von Typo3 8.x auf die Typo3 9.5 LTS angehen.

Cookie Consent in Typo3

Der eine oder andere dürfte es vielleicht noch nicht umgesetzt haben und ist auf der Suche nach einer einfachen Integration des Cookie Consent bzw. einer Cookie Bar in Typo3 um die DSGVO zu erfüllen.

Sehr schön habe ich folgende Lösung von https://cookieconsent.insites.com gefunden. Und diese ist leicht mittels Typoscript zu integrieren:

Die externen JS und CSS müssten  um die DSGVO zu erfüllen lokal gespeichert werden.

Das ganze funktioniert auch mit mehreren Sprachen – dann einfach obigen Code nochmal reinkopieren, Texte in andere Sprache ändern und folgende Typoscript-Condition um den Code einfügen:

 

Noch nicht final geklärt ist ja die Frage, ob ein reines Informieren der User über die Cookies ausreicht, oder ob diese erst gesetzt werden dürfen, wenn der User aktiv anklickt, dass Cookies erlaubt sind.

Auch das wäre mit Cookie Consent möglich – es gibt eine Opt-in und Opt-out Funktion.

Fluid in Typo3: Override Templates hat sich geändert

Der Typoscript Code um Templates zu überschreiben (override templates) hat sich geändert. Ich musste dies bei mir in Typo3 8.x ändern – und hab die Lösung erst nach einigem Suchen gefunden.

Die Typoscript lib hat sich geändert von lib.contentElement zu lib.fluidContent.

Richtig heisst der Typoscript-Code also um Templates in Fluid zu überschreiben:

 

Typo3 Fluid: if Viewhelper (if – then – elseif – else)

Mit Typo3 8 wurde Fluid als Standalone Plugin weiterentwickelt und einigen Änderungen und Erweiterungen unterzogen. Da die Frage immer wieder mal auftaucht – hier eine kurze Übersicht die der if Viewhelper in Typo3 Fluid aufgebaut ist. Einmal in Typo3 7 und früher, einmal in Typo3 ab Version 8.

Fluid if Viewhelper in Typo3 7 und früher

Hier gab es das elseif-Konstrukt noch nicht, und man musste die if-Conditions in der Regel verschachteln:

Eine Ausnahme gab es, um ohne die if-Verschachtelung auszukommen – man konnte via Arrays die logische UND-Verknüpfung (&&) wie folgt nachbauen, und sich somit das Verschachteln der if-Anweisungen sparen:

 

Fluid if-Viewhelper in Typo3 8 und höher

Möglich ist auch, diese Abfragen mit logischen UND bzw. ODER in kürzerer Schreibweise zu schreiben:

Weitere Beispiele:

Ist wahr, wenn eine der beiden Variablen gesetzt ist.

 

Inline Schreibweise von if-Conditions:

If – Abfragen können auch inline geschrieben werden. Das ist z.B. sinnvoll, wenn in Fluid-Templates je nach gesetzten Variablen oder bei bestimmten Varialben-Werten bestimmte CSS-Klassen ausgegeben werden sollen.

 

Beispielsweise wenn im Backend bei Inhaltselementen im Reiter „Erscheinungsbild“ bestimmte Layouts, Frames oder Abstände ausgewählt werden.

Hier die generelle Schreibweise:

 

Bootstrap 3 Spaltenelemente in Typo3

Ich setze bei meinen Projekten ganz gerne auf die Lösung von  Stefan Schäfer / merec.org, um Spaltenelemente basierend auf Bootstrap 3 Klassen zu realisieren.

Aufgrund der Anforderung, dass die Redakteure das Aussehen der Inhalte, im speziellen Fall auch der Bootstrap Spalten, anpassen sollen, habe ich das Typoscript Setup von Stefan noch etwas erweitert bzw. geändert.

Die prinzipielle Struktur die ich gerne wollte war:

Folgende Dinge soll der Redakteur beeinflussen können:

  • Ob die Zeile 100% der Seitenbreite einnimmt oder die vordefinierte Inhaltsbreite (aus dem Reiter „Erscheinungsbild“ -> Frame)
  • Abstand davor und Abstand danach (aus dem Reiter „Erscheinungsbild“ -> Space Before / Space After)
  • Hintergrundfarbe der Zeile (aus dem Reiter „Erscheinungsbild“ -> Layout)

 

Ich habe also beim Typoscript Code von Stefan folgendes ergänzt (heller hinterlegte Zeilen):

 

Umstellung einer Domain auf SSL / https in Typo3

Die Umstellung einer Domain auf SSL (also von http:// auf https:// ) ist normalerweise kein großes Problem. Ein paar Dinge gibt es doch zu beachten.

Gerade in einer Multi-Domain Installation von Typo3 müssen ein paar Dinge beachtet werden. Einige der Tipps, die man im Web so findet passen da nicht. Zum Beispiel werden oft .htaccess Snippets genannt die alle Domains innerhalb des Typo3 zum Beispiel von http:// auf https:// weiterleiten.

Zuallerst muss das SSL-Zertifikat bestellt und eingerichtet werden – nicht vergessen, den A-Record der Domain auf die neue IP zu mappen bei den DNS-Einstellungen.

In meinem Fall habe ich aber folgendes gebraucht:

  • Weiterleitung von http://domain.com auf https://www.domain.com
  • Weiterleitung von https://domain.com auf https://www.domain.com
  • Weiterleitung von http://www.domain.com auf https://www.domain.com

Anmerkung:

Gerade die Weiterleitung von non-www auf https://www. sollte aus SEO-Gründen nicht verkettet passieren (also keine Weiterleitung von http://domain.com nach http://www.domain.com und dann nach https://www.domain.com) sondern in einem Rutsch.

Folgender Code bewerkstelligt diese Anforderungen:

 

Aber besser noch dieses Snippet: (danke an Gerald)

 

Zusätzliche Einstellungen für Typo3:

Damit das Ganze auch richtig funktioniert, müssen in Typo auch noch ein paar Einstellungen gemacht werden:

  1. Bei den Seiteneinstellungen muss unter „Behaviour“ das Protokoll der jeweiligen Seite auf https:// umgestellt werden.

    (Leider muss das für jede einzelne Seite gemacht werden – hier hilft es, in der List Ansicht mittels Plus-Symbol den Wert „Enforce Protocol“ in die Listansicht zu holen. So kann man wenigstens alle Seiten einer Ebene in einem Rutsch abarbeiten.)Typo3 SSL https Umstellung
  2. Bei den Seiteneinstellungen kann man unter „Resources“ auf der Startseite der Domain gleich unter Page TS Config folgendes eintragen:

    Das sorgt dafür, dass neu angelegte Seiten gleich den Wert „https://“ als Protokoll bekommen.
  3. Im Typoscript Template folgendes eintragen:

    Sollten noch config.baseURL-Einträge vorhanden sein können diese mit absRefPrefix ersetzt werden (sofern Typo3 >= 6.2). Bei der Domain nun als Protokoll ebenso https:// einsetzen.

Das wars :-).

Neue Features von FLUID in Typo3 8 LTS (Typo3 8.7)

Mit FLUID kann man nun komplexe, verschachtelte und gruppierte  Abfragen durchführen, wie zum Beispiel:

Es gibt nun die Möglichkeit, bei IF-Abfragen auch elseif-Schleifen abzufragen:

Neuer ViewHelper: f:or

Damit kann man verkettete Abfragen schnell durchführen – die erste Variable die nicht leer ist wird ausgegeben:

 

 

 

 

Typo3 8 LTS – Die Neuerungen

Typo3 8 LTS

Endlich – viele von uns haben schon auf die neue LTS Version von Typo3 gewartet – nun ist sie, 18 Monate nach der Typo3 7 LTS Version, erschienen. Und sie wartet mit ein paar wirklich tollen Neuerungen auf, hier die für mich persönlich wichtigsten Neuerungen:

  • Responsive Backend:
    Es wurde weiter an dem Responsive Design im Backend gearbeitet – und man kann sagen, dass dieses nun komplett umgesetzt wurde.
  • Performance:
    Die neue Typo3 8 LTS hat als Mindestanforderung PHP Version ab 7. Das hat zur Folge, dass das Typo3 Backend nun gefühlt sehr viel schneller ist. Fluid wurde komplett ausgelagert, was zudem zu einem schnelleren Backend führt.
  • Bildbearbeitung:
    Auch hier hat man einige neue Features integriert und vorhandenes optimiert. Es ist nun möglich, das Seitenverhältnis zu definieren, ausserdem für Tablet und Smartphone-Varianten des Bildes Fokusbereiche zu definieren. Fazit: Sehr praktisch!
  • Rich Text Editor: CKEditor integriert
    Der in die Jahre gekommene Editor HTMLArea wurde von CKEditor abgelöst – CKEditor ist sehr einfach zu integrieren und konfigurieren und hat ein paar tolle Features – unter anderem einen „Frontend-Editing“ – Modus, welcher in zukünftigen Versionen von Typo3 integriert werden soll.
  • FLUID
    Auch bei der Sprache FLUID hat sich einiges getan – so hat man FLUID nun aus dem Typo3 Core entkoppelt und es gibt einige neue Features.

Eine Liste von allen Neuerungen kann man hier finden oder bei dem PDF „What’s New Slides“ (111 Seiten).

Typo3 Update via SSH und Symlinks

Meistens muss ich, wenn ich ein Typo3 Update durchführe, die SSH Befehle dazu googeln, da ich sie nicht so oft brauche und mir aus diesem Grund auch nicht vollständig merke. Zeit, diese SSH Befehle hier niederzuschreiben :-).

Wie oft hab ich schon TYPO3 Updates gemacht und schaue jedes mal wieder die Befehle auf der Kommandozeile nach? Daher publiziere ich hier nichts Neues, aber Sinnvolles:

Erst einmal Grundlegende Befehle:

Auflistung eines Ordnerinhaltes:
ls
ls -l – Mit Details

Ordner:
cd ordnername – Wechseln in den Ordner „ordnername“
cd ordnername/subordner/noch/einer/ – Wechseln in bestimmten Unterordner
cd .. – Eine Ebene höher
cd / bzw. cd ~ – Wechseln das Home Verzeichnis

Holen der aktuellen Typo3-Version, z.B.:
wget get.typo3.org/8.6.0

Das heruntergeladene File (tar.gz) entpacken:
tar xvfz typo3_src-8.6.0.tar.gz

Wechseln zum richtigen Verzeichnis:
cd html/

Der alte Symlink muss entfernt werden:
rm typo3_src

Neuen Symlink setzen:
ln -s typo3_src-8.6.0/ typo3_src

Möglicherweise müssen folgende Symlinks ebenfalls noch gesetzt werden:
(Symlinks für typo3/ , t3lib/ und index.php)

ln -s typo3_src/index.php index.php
ln -s typo3_src/typo3 typo3
ln -s typo3_src/t3lib t3lib

Ist das erledigt, muss man in das Install-Tool von Typo3 und dort den Upgrade-Wizard ausführen.

Typo3 8.5 erschienen

Ein verfrühtes Weihnachtsgeschenk, so wird es auch auf typo3.org genannt. Wir werden uns gleich die wichtigsten Neuerungen von Typo3 8.5 ansehen, einiges davon klingt vielversprechend.

So wurde endlich die Erstellung von Formularen z.B. um Kontaktformulare zu erstellen, überarbeitet. Die Funktionen wanderten von einer Extension nun zum „Form Framework“.

Es können nun einfach und schnell Formulare erstellt werden, hierzu ein kleines Video:

Eine weitere, lang erwartete Änderung ist die Erneuerung des Rich-Text-Editors (RTE). Dieser basiert standardmäßig seit einiger Zeit auf HTML-Area-RTE. Nun hat man endlich eine Basis-Version des ziemlich soliden CKEditor in Typo3 8.5 integriert.

CKEditor in Typo3 8.5
CKEditor in Typo3 8.5

In den nächsten Versionen wird diese Integration immer weiter fortgeführt.

Weitere Änderungen im Changelog.