Contao auf 2.10.0 updaten

Die Version 2.10.0 beinhaltet sehr viele Änderungen. Bei einem manuellen Update ist vor allem die Änderungen im Template-System zu beachten. Die Endung *.tpl sollte nicht mehr verwendet werden. An dessen Stelle treten die Endungen *.xhtml oder *.html5. Um eine bestehende Installation auf 2.10.0 zu aktualisieren, sollte man also den Contao-Core entpacken und in das Contao Verzeichnis kopieren (bestehende Dateien werden überschrieben). Anschließend kann man z. B. unter Windows mit del /S *.tpl alle alten Template-Dateien rekursiv löschen. Unter Linux heißt der Befehl rm -Rf *.tpl. Bitte diese Befehle mit Vorsicht verwenden, die Dateien werden rekursiv gelöscht. Also vorher unbedingt ein Backup machen.

Dieses Vorgehen sollte man nur wählen, wenn keine Erweiterungen verwendet werden (da diese noch mit den alten *.tpl Dateien arbeiten).

Natürlich muß anschließend die Datenbank mit dem Installationstool aktualisiert werden.

Ich hatte auch Probleme mit dem CSS-Framework. Die Hintergrundbilder wurden teilweise nicht korrekt eingebunden (Pfad im CSS war nicht korrekt). Nachdem ich im Backend die CSS-Definitionen nochmals abgespeichert hatte, wurden die Dateien neu generiert und der Fehler war behoben.

Wer eigene Extensions entwickelt kann leider nicht einfach seine Template-Dateien auf die Endung .xhtml umbenennen, da im Backend zwingend die Endung *.html5 erwartet wird. Um jetzt nicht alle Template-Dateien doppelt zu pflegen, hat man zwei Möglichkeiten:

  1. Im Modul wird die Methode generate() abgeleitet und im Fall, dass wir uns im Backend befinden, wird einfach ein Text ausgegeben:
    public function generate()
    {
      if (TL_MODE == 'BE')
        return 'Mein Modul';
      return parent::generate();
    }
  2. Man kann auch wahlweise das Format xhtml erzwingen.
    protected function compile()
    {
      // force xhtml format
      $this->Template->setFormat('xhtml');
      ...
    }

Außerdem muß man seine Formulare anpassen, da nun mit einem Request-Token-System gearbeitet wird. Wie die Formulare anzupassen sind, ist auf der Contao-Seite beschrieben.

Kommentar verfassen