W miniony piątek ukazała się nowa wersja Contao 4.8.0. To wydanie zawiera nowe funkcje takie jak odłożone skalowanie obrazków, 2-stopniowe uwierzytelnianie we frontendzie, ekrany splash dla klipów YouTube i Vimeo, i wiele więcej.
Więcej informacji na każdy z tych tematów można uzyskać w podsumowaniu meetingu developerów.
Odłożone skalowanie obrazków
W Contao 4.8 tworzenie miniaturek jest odłożone w czasie i nie następuje podczas procesu renderowania strony. To nie tylko sprawia, że strona jest szybsza, ale również pozwala na generowanie tylko tych obrazków, które faktycznie powinny być wczytane. Zatem pośród całego zestawu obrazków dla różnych rozdzielczości (np. 1x, 1.5x, 2x), tylko obrazki pasujące do danego urządzenia zostaną wygenerowane.
Z tego powodu nie powinno być już problemów z wydajnością, gdy użytkownik kliknie w menedżerze plików przycisk "rozwiń wszystkie".
W klipie video po lewej stronie prezentacja nowej funkcjonalności w Contao 4.8 i porównanie ze starą metodą po prawej stronie:
Odłożone skalowanie obrazków nie powinno być mylone z lazy loading, które ładuje obrazki z serwera w momencie gdy są one widoczne dla odwiedzającego. Lazy loading zostanie zaimplementowany jak tylko wszystkie przeglądarki będą wspierać taką funkcjonalność (patrz #433).
2-stopniowe uwierzytelnianie we frontendzie
Od Contao 4.6, użytkownicy backend mogli zabezpieczyć swoje konta włączając 2-stopniowe uwierzytelnianie. Taka sama funkcjonalność jest teraz dostępna dla użytkowników frontend. Administrator w ustawieniach strony może zadecydować, czy takie uwierzytelnianie jest opcjonalne czy obowiązkowe dla wszystkich.
HTTP cache
Niepotrzebne pliki cookies, które powstrzymywały przez zachowaniem strony we współdzielonej cache, były ostatnią dużą przeszkodą przez efektywnym używaniem HTTP cache. Problem ten został rozwiązany – przynajmniej w głównej dystrybucji – w Contao 4.8. Wymagało to ogromnej ilości pracy w ticketach: #351, #365, #389, #467, #468, #471, #482, #483, #515, #551, #553, #565 i #594.
Pierwszy raz w historii, Contao jest całkowicie kompatybilne z reverse proxies takimi jak Varnish. Wykres poniżej pokazuje czas, jaki Contao 4.7 i 4.8 z i bez cache potrzebują na wyrenderowanie strony:
Absolutne wartości są nieistotne, ponieważ zależą od wielu technicznych czynników takich jak obciążenie serwera. W porównaniu względnym natomiast można powiedzieć, że Contao 4.8 z włączonym cache renderuje strony o około 40% szybciej niż Contao 4.7 również z włączonym cache!
Usprawniony tryb debug
W Contao 4.8 możesz włączyć tryb debug poprzez proste kliknięcie myszą w backendzie, bez potrzeby używania pliku app_dev.php
. Dodatkowo, pasek debug pokazuje teraz tłumaczenia Contao w sekcji Translation.
Usprawnione przetwarzanie obrazków
W Contao 4.8 wgrywane obrazki będą automatycznie obracane na podstawie ich danych EXIF. Contao może również tworzyć zoptymalizowane wersje WEBP obrazków i automatycznie dodawać je do elementu picture
. W takim wypadku nowoczesne przeglądarki pobiorą tylko zoptymalizowany obrazek.
W trakcie tych zmian, opcja "Domyślne rozmiary obrazków" została przeniesiona z ustawień motywu do ustawień szablonu strony.
Ekrany splash dla klipów YouTube/Vimeo
Aby powstrzymać wysyłanie danych do providera poprzez wstawione klipy YouTube lub Vimeo, możesz od teraz używać obrazka ekranu splash. Video zostanie załadowane tylko i wyłącznie po kliknięciu w ten obrazek.
Zakres liczb numerycznych pól tekstowych
Generator formularzy zawiera dwa nowe pola "wartość minimalna" i "wartość maksymalna", które mogą być użyte do określenia zakresu liczb, jaki użytkownik strony może wprowadzić w dane pole tekstowe.
Minimalna długość słów kluczowych
W Contao 4.8 moduł wyszukiwarki może zostać skonfigurowany w taki sposób, aby ignorował słowa kluczowe, które nie przekraczają ustawionej minimalnej długości.
Wyróżnione newsy w pierwszej kolejności
Moduł listy aktualności zawiera teraz opcję do pokazania wyróżnionych newsów w pierwszej kolejności przed pozostałymi.
Komponenty Contao
W Contao 4.8, kilka komponentów zostało usuniętych, ponieważ były one przestarzałe lub odpowiadały za funkcjonalność, którą większość przeglądarek wspiera natywnie.
Struktura katalogów Symfony 4
W Symfony 4 pliki konfiguracyjne są przechowywane w katalogu /config
zamiast w katalogu /app/config
. Mimo tego, że Contao 4.8 nadal wspiera starą lokalizację plików, używanie katalogu /app
jest przestarzałe i nierekomendowane.
- Własne pliki konfiguracyjne Symfony (np.
config.yml
lub services.yml
) powinny być przechowywane w katalogu /config
i już nie w katalogu /app/config
.
- Własne pliki Contao (np. pliki DCA, tłumaczenia czy szablony) powinny być przechowywane w katalogu
/contao
i już nie w katalogach /app/Resources/contao
czy /src/Resources/contao
.
Zmiany dla developerów
Wszystkie zmiany dla developerów są dostępne w oryginalnym newsie.
Kompatybilność z Symfony
Contao 4.8 jest kompatybilne z następującymi wersjami Symfony: 4.2, 4.3.
Notatki dot. aktualizacji
Od wersji Contao 4.8 mobilny szablon strony nie jest częścią głównej dystrybucji Contao. Jeśli potrzebujesz tej funkcjonalności, musisz zainstalować paczkę contao/mobile-page-layout-bundle
. Niestety HTTP cache nie będzie działał z mobilnymi szablonami strony!