Dzisiaj ukazała się nowa wersja Contao oznaczona numerem 3.3.RC1. Jest to wersja testowa, więc nie należy jej używać do stron produkcyjnych. Kompletna lista zmian dostępna jest w changelogu.
Przepisane widżety formularza
Widżety formularza we front endzie (klasy zaczynające się na Form, szablony na form_) zostały przepisane i kod HTML znajduje się teraz w szablonie i tam może być on zmodyfikowany. Metody generate() i generateWithError() nie są już używane.
Dodatkowo, każdy widżet używa teraz własnego szablonu, który może zostać nadpisany przez własny.
Dziedziczenie szablonów
System szablonów został poszerzony o dziedziczenie znane z Twig, gdzie można nadpisać bloki szablonu-rodzica z szablonu-dziecka.
<!-- Template fe_page.html 5 -->
<!DOCTYPE html>
<html lang="<?php echo $this->language; ?>">
<head>
<meta charset="<?php echo $this->charset; ?>">
<title><?php echo $this->title; ?></title>
<?php $this->block('meta'); ?>
<meta name="robots" content="<?php echo $this->robots; ?>">
<meta name="description" content="<?php echo $this->description; ?>">
<meta name="keywords" content="<?php echo $this->keywords; ?>">
<meta name="generator" content="Contao Open Source CMS">
<?php $this->endblock(); ?>
</head>
Wtedy możesz np. wprowadzić takie zmiany w szablonie-dziecku:
Tutaj jak będzie wyglądał finalny kod:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="ISO-8859-1">
<title>My website title</title>
<meta name="robots" content="index,follow">
<meta name="description" content="">
<meta name="keywords" content="">
<meta name="generator" content="Contao Open Source CMS">
<meta name="author" content="Leo Feyer">
</head>
Oznaczenia szablonów w trybie diagnozowania
W trybie diagnozowania, początek i koniec każdego szablonu zostanie oznaczony komentarzem HTML w kodzie źródłowym strony. W komentarzu można zobaczyć źródło szablonu (folder modułu, folder motywu lub katalog /templates).
Elastyczny motyw back end
Został dodany drugi motyw back end nazwany "elastycznym", który dostosowuje się do rozmiaru ekranu urządzenia. Zostały wprowadzone pewnie zmiany dla szerokich monitorów, tabletów i urządzęń mobilnych.
Upload pliku drag'n'drop
Oprócz domyślnego uploadera, pojawił się teraz drugi, oparty o JavaScript, który umożliwia wgrywanie plików na serwer metodą drag'n'drop.
Uprawnienia importu/eksportu motywów
Importowanie i eksportowanie motywów nie jest już domyślnie dostępne, a musi zostać włączone w ustawieniach użytkownika lub grupy użytkowników.
Indeksowanie stron w tle
Do tej pory strony były indeksowane automatycznie tuż przed tym zanim zostały wygenerowane. W przyszłości, będą one indeksowana przez zapytanie AJAX, aby zoptymalizować czas ładowania strony.