Contao CMS upgraden: Typische Probleme – und wie man sie löst

Contao Release Plan 2012-2017
Contao Release Plan 2012-2017

Das Open Source CMS Contao wird kontinuierlich weiterentwickelt. Der Relase Plan sieht vor, alle sechs Monate ein neues Release zu veröffentlichen. Das ist erfreulich für diejenigen, die sich auf neue Features freuen; es bedeutet aber auch eine Menge Arbeit für all jene, die für eine Contao-Installation verantwortlich sind, denn eine normale Contao-Version wird nur ein halbes Jahr lang gepflegt und muss dann aktualisiert werden. Lediglich die Versionen mit Long Term Support (LTS) werden zwei Jahre lang mit Bugfixes und sicherheitsrelevanten Patches versorgt.

Ende Juli 2014 läuft der Support für Contao 2.11 aus, und somit wird vielerorts das Upgrade auf Contao 3.2 LTS oder Contao 3.3 anstehen. Ich habe in den letzten Monaten eine ganze Reihe von Websites aktualisieren müssen und fasse in diesem Artikel meine wichtigsten Erfahrungen zusammen.

Read more…

Contao-Websites einfach an Google Analytics anbinden

Konfigurationsmöglichkeiten für Google Analytics in Contao

Als ich Contao (damals noch TYPOlight genannt) kennenlernte, schätzte ich unter anderem, wie einfach man den Tracking Code für Google Analytics in eine Website integrieren konnte: Man brauchte lediglich die Tracking-ID in das entsprechende Feld im Seiten-Layout einzutragen. In der Version 2.9 wurde dieses Feld jedoch entfernt, und seither muss man die Tracking-ID über das Template moo_analytics.tpl einbinden (hier im Detail beschrieben).

Wer wie ich der alten Methode nachtrauert, dem kann geholfen werden: Die Erweiterung googleanalytics bringt nicht nur das Feld für die Tracking-ID zurück, sondern bietet zusätzlich eine ganze Reihe von weiteren Einstellmöglichkeiten für Website-Statistik. Allerdings sind alle diese Parameter nicht mehr Teil des Seiten-Layouts, sondern der Seite. Im Normalfall nimmt man die Einstellungen also in der Wurzelseite (Seitentyp: "Startpunkt einer Website") vor; diese werden dann an die übrigen Seiten der Website vererbt.

Contao: Download-Dateien verstecken

Nehmen wir an, Sie publizieren auf Ihrer Website Preislisten im PDF-Format. Und weil die Preise Ihrer Produkte in kurzen Intervallen ändern, stellen Sie immer zum Monatsersten eine neue Preisliste ins Netz. Mit Contao können Sie diese Updates vorbereiten und die Preislisten zum gewünschten Zeitpunkt automatisch austauschen lassen, denn jeder Artikel kann mit einem Veröffentlichungszeitpunkt versehen werden.

image 

So weit, so gut. Wenn Sie nun allerdings die Preislisten ganz normal in die Dateiverwaltung hochladen und aus einem Artikel heraus verlinken, dann ergibt sich ein Link in der folgenden Form:

www.beispiel.ch/preisliste.html?file=tl_files/preislisten/Preisliste_2012-04-01.pdf

Wer Contao ein bisschen kennt, kann auch direkt auf die obige PDF-Datei zugreifen, indem er folgende URL benutzt:

www.beispiel.ch/tl_files/preislisten/Preisliste_2012-04-01.pdf

Das ist an sich noch kein Problem. Zum Problem wird es erst, wenn Sie schon Mitte April die Mai-Preisliste in die Dateiverwaltung hochladen. Auch wenn der Artikel, der die Mai-Preisliste verlinkt, erst am 1.5.2012 online geht, so lässt sich die URL der Preisliste leicht erraten und bereits vorab herunterladen:

www.beispiel.ch/tl_files/preislisten/Preisliste_2012-05-01.pdf

Eine ähnliches Problem besteht dort, wo Download-Dateien von passwortgeschützten Seiten aus verlinkt werden: Die Seiten selbst sind zwar vor unerlaubtem Zugriff geschützt, die Download-Dateien jedoch nicht. Wer also die Direkt-URL errät, kann auch ohne Login auf die Dateien zugreifen.

Sofern es sich nicht um besonders sensible Daten handelt, kann man das Problem einfach entschärfen, indem man Verzeichnis- oder Dateinamen aus zufälligen Zeichenfolgen erstellt. Im obigen Beispiel könnte man beispielsweise für jeden Monat ein neues Unterverzeichnis für die Preisliste anlegen, das im April vielleicht UlkmirgxX0GHzQgqpv6u und im Mai beispielsweise iGWxgHfIMI09JdLVZbDd heisst. Die Direkt-URL auf die Mai-Preisliste wäre dann alles andere als leicht zu erraten:

www.beispiel.ch/tl_files/preislisten/iGWxgHfIMI09JdLVZbDd/Preisliste_2012-05-01.pdf

Wohl verstanden: Das ist kein echter, zuverlässiger Schutz gegen unerlaubte Downloads – aber ein einfaches Mittel, wie ein Content-Manager auch ohne technische Kenntnisse die Direkt-URL seiner Dateien verschleiern kann.

Contao: Version 2.11.0 veröffentlicht

Contao Logo

Das Entwickler-Team von Contao hat die neuste Version 2.11.0 des beliebten Open Source CMS veröffentlicht. Die wichtigsten Neuerungen im Überblick:

  • 2.11.0 ist die erste Contao-Version mit Long Term Support (LTS). Dies bedeutet, dass es für diese Version mindestens 18 Monate lang Sicherheits-Updates und Bugfixes geben wird. Dadurch wird weniger schnell ein Update auf das nächste Minor- oder Major-Release fällig, was typischerweise einen grösseren Aufwand mit sich bringt, weil API, Datenstrukturen oder Templates ändern können (Details zum Contao-Release-Zyklus und zum Long Time Support).
  • Die Sprache einer Seite wird künftig nicht mehr als Parameterwert pro Seite erfasst, sondern sie ergibt sich aus dem Pfad: Die deutsche Version einer Website wird beispielsweise unterhalb der Seite de angelegt, die englische unter en usw. Dies spiegelt sich auch in der URL wieder, wo dann eine deutsche Seite unter www.mustermann.ch/de/news.html erreichbar ist, ihr englisches Pendant unter www.mustermann.ch/en/news.html. Sofern die beiden Sprachversionen dasselbe Alias benutzen (im vorigen Beispiel: news), kann man nun einfach zwischen den Sprachen wechseln.
  • In den Theme-Einstellungen können neu globale Stylesheet-Variablen definiert werden, was eine schnelle Anpassung von zentralen Gestaltungsparametern ermöglicht. Stylesheet-Variablen in den Stylesheet-Einstellungen haben allerdings Vorrang und überschreiben ggf. globale Variablen.
  • Die Frontend-Module Event-Liste und Event-Leser können nun auf einer einzigen Seite kombiniert werden. Dasselbe gilt für Nachrichtenarchiv und Nachrichtenleser sowie für FAQ-Listen und FAQ-Leser. Das FAQ-Modul hat zudem im Backend ein Berechtigungssystem analog zum News- und zum Kalender-Modul erhalten.
  • Nicht eigentlich neu, von nun an aber zwingend vorgeschrieben ist die Verwendung eines Website-Startpunkts als oberster Knoten im Seitenbaum. Damit wird ein empfohlenes, sinnvolles Vorgehen zum Standard, was viele Anfängerprobleme vermeiden hilft.
  • Beim Anlegen von Backend-Benutzern kann man neu den Benutzer zwingen, beim ersten Login sein Passwort zu ändern. Dies erhöht insbesondere dann die Sicherheit, wenn Passwörter per E-Mail verschickt werden.

Daneben bringt die neue Version zahlreiche weitere Detailverbesserungen und Bugfixes, welche hier beschrieben sind.

1. Contao-Konferenz, Bad Soden

Contao-Konferenz 2011

Als Contao noch TYPOlight hiess, versammelten sich seine Anwender jährlich zum TYPOlight-Usertreffen. Mit dem Namenswechsel wurde auch der Anlass umbenannt, und so findet dieses Jahr erstmals die Contao-Konferenz statt. Neu werden parallel zu den Vorträgen (Session Track) auch Workshops angeboten, um im kleineren Kreis (max. 40 Teilnehmer) bestimmte Themen intensiver zu diskutieren. Die Contao-Konferenz 2011 findet am 2. und 3. Juni 2011 im deutschen Bad Soden statt.

TYPOlight auf Contao upgraden

Contao Backend Login

Dinge, die kompliziert erscheinen, schiebt man gerne vor sich her. So habe ich lange damit zugewartet, meine diversen TYPOlight-Installationen der Version 2.8 auf Contao 2.9 zu aktualisieren, denn ein Namenswechsel einer Software ist meist mit wechselnden Pfaden verbunden, und das kann ein Update tricky machen.

TYPOlight – Verzeihung: Contao – ist aber auch in dieser Situation eine positive Ausnahme. Das Update verläuft trotz des neuen Namens exakt wie bisher, und das obwohl das Backend nun statt unter www.beispiel.com/typlight/ neu unter www.beispiel.com/contao/ liegt. Also:

  1. Komplett-Backup von Dateien und Datenbank erstellen
  2. Dateien der aktuellen Contao-Version per FTP auf den Server laden
  3. Konfigurationsdateien aus dem Backup nach /system/config/ zurückspielen
  4. Installer ausführen

Detailliertere Informationen zum manuellen Update findet man im Contao-Benutzerhandbuch.

xnewsletterlog: Newsletter-Versandprotokoll für TYPOlight / Contao

Contao mit Backend-Modul 'Newsletter-Versandlog'

Von Haus aus verfügt das Open Source Content Management System Contao (ehem. TYPOlight) über  ein System-Log, in dem man die wichtigsten Ereignisse nachvollziehen kann. Was dort jedoch nicht auftaucht sind Informationen über den Versand von Newsletters, obwohl die Newsletter-Engine zur Grundausstattung dieses CMS gehört.

Um herauszufinden, ob bzw. wann ein Newsletter-Versand stattgefunden hat, ist eine Erweiterung wie z.B. xnewsletterlog erforderlich. Dadurch steht dann das Backend-Modul “Newsletter-Versandlog” zur Verfügung, und dort kann man jede einzelne verschickte E-Mail mit Zeitstempel und Empfänger nachvollziehen, wie der nachfolgende (nachträglich anonymisierte) Screenshot zeigt:

Das Newsletter-Versandlog listet jede einzelne verschickte E-Mail auf

Interessant ist dabei, dass die Extension xnewsletterlog nicht etwa einen Protokollierungsmechanismus in die Newsletter-Engine einbaut, sondern lediglich ein Log darstellt, das die Newsletter-Engine sowieso anlegt. Warum Contao also nicht standardmässig ein Newsletter-Versandprotokoll im Backend anzeigt, ist mir ehrlich gesagt schleierhaft, da der Aufwand minim wäre.

Wachsendes Fachbuch-Angebot zu Contao

Leo Feyer: Das offizielle Contao-Buch

Gerade mal ein halbes Jahr ist es her, seit das Open Source CMS TYPOlight in Contao umbenannt wurde – und schon sind vier Fachbücher sowie ein Video-Training dazu verfügbar:

  • Peter Müller: Websites erstellen mit Contao (Galileo Computing)
  • Thomas Weitzel: Mit Contao Webseiten erfolgreich gestalten: Konzeption, Umsetzung, Beispielprojekte (dpi / Addison-Wesley)
  • Nina Gerling: Contao für Redakteure: Inhalte editieren und verwalten mit dem Open-Source-CMS (Addison-Wesley)
  • Anne-Kathrin Merz: Contao – Das umfassende Praxisbuch (mitp)
  • video2brain Contao: Dynamische Websites mit dem Open Source CMS(Addison-Wesley)

Auch Das offizielle TYPOlight-Handbuch des Entwicklers Leo Feyer wird demnächst neu aufgelegt und vollzieht dann den Namenswechsel: Das offizielle Contao-Buch: Der Leitfaden für Anwender, Administratoren und Entwickler (Addison-Wesley) heisst der Titel.

Das reichhaltige Angebot an deutschsprachiger Fachliteratur zeigt, dass Contao im Markt gut etabliert ist. Das ist ein schöner und verdienter Erfolg für Leo Feyer und sein kleines Team, das in konsequenter Aufbauarbeit ein übersichtliches, ästhetisches und doch leistungsfähiges CMS geschaffen hat.

TYPOlight User-Treffen, Essen

TYPOlight User-Treffen 2010

Die Anwender des Open Source CMS TYPOlight treffen sich am 14. und 15. Mai 2010 zum 3. TYPOlight User-Treffen in Essen. Das Treffen gliedert sich in den “Business-Day” (der sich an professionelle TYPOlight-Nutzer, Agenturen und Partner richtet) und den “Community-Day” (der für sämtliche Anwender gedacht ist). Für den “Community Day” konnten als Gastredner Guido Pelzer (Google Adwords Seminar Leader) sowie Peter Müller (Dozent und Autor von “Little Boxes: Webseiten gestalten mit CSS”) verpflichtet werden, welche Vorträge zu den Themen Suchmaschinenoptimierung und CSS halten werden.

Schwere Sicherheitslücke in TYPOlight

TYPOlight Logo

Gemäss TYPOlight-Entwickler Leo Feyer weist der TYPOlight Installer eine schwere Sicherheitslücke auf, die es jedem ermöglicht, die Passwort-Abfrage zu umgehen und die Datenbank-Zugangsdaten sowie – falls der Safe Mode Hack verwendet wird – FTP-Zugangsdaten auszulesen.

Abhilfe schafft ein Update auf die TYPOlight-Version 2.7.6. Wer aus bestimmten Gründen kein Komplett-Update durchführen möchte oder kann, installiert stattdessen einen Patch, der für die TYPOlight-Versionen 2.7, 2.6, 2.5 und 2.4 bereitsteht.