Nadszedł czas. Nowa wersja 5.1 Contao jest dostępna!
Główny zespół i wielu innych programistów nie szczędziło wysiłków i spędziło niezliczone godziny, aby przenieść nasz ulubiony CMS na wyższy poziom. Wprowadzono kilka nowych funkcji dla użytkowników i programistów.
Contao 5.1 zastępuje Contao 5.0, które nie będzie już aktualizowane. Nowa wersja będzie wspierana aktualizacjami do sierpnia 2023. Możesz dowiedzieć się, które wersje Contao są obecnie obsługiwane tutaj.
Backend – ulubione linki
W backendzie Contao dowolne linki można teraz zapisać jako ulubione.
Ulubione linki są następnie gromadzone po lewej stronie nad treścią i mogą być również zagnieżdżane w poziomach. Można je edytować, zmieniać kolejność i usuwać za pomocą symbolu gwiazdki w pomarańczowym obszarze informacyjnym (toolbar).
W trakcie tego dodano również nowy, trzeci poziom nawigacji w backendzie.
Zaawansowany widok siatki
Do tej pory pola typu input w Contao i jego rozszerzeniach mogły zajmować tylko całą lub połowę dostępnej przestrzeni. Od teraz są też dostępne klasy pozwalające na zajęcie 1/4, 1/3, 2/3 i 3/4 szerokości. #5672
Tryb ciemny
Dla tych, którzy preferują wyższy kontrast i/lub często pracują w nocy, dostępny jest teraz tryb ciemny. #5031
Tryb automatycznie dostosowuje się do ustawień systemu operacyjnego, ale oczywiście można go również wybrać ręcznie.
Kopiowanie wielokrotne
We wszystkich widokach listy, po wybraniu funkcji „Edytuj wszystkie rekordy”, masz teraz możliwość korzystania z opcji „Kopiuj wielokrotnie”. Po wklejeniu skopiowane elementy pozostają w schowku i można je dalej kopiować.
Funkcja kończy się kliknięciem na „Wyczyść schowek”. #5417
Sortuj w obie strony
Pola można teraz sortować w porządku rosnącym i malejącym w widokach list.
Znasz to już ze stron chronionych. Jeśli udostępniasz artykuły tylko jednej lub kilku grupom użytkowników po zalogowaniu, jest to zaznaczone w przeglądzie symbolem z kłódką. #5304
Zaawansowany podgląd elementu
Podgląd elementu pokazuje teraz więcej informacji o zawartości danego elementu. Pozwala to zespołowi redakcyjnemu szybciej zdecydować, który element należy edytować, aby dostosować określoną zawartość frontendu. #5609
Domyślne pole wyszukiwania
Deweloperzy mogą teraz określić dla DCA, które pole powinno być przeszukiwane domyślnie, o ile user:inside nie dokonał wyboru. #5364
Zaraz po zalogowaniu zobaczysz komunikat na pulpicie nawigacyjnym, o tym że nie podałeś adresu e-mail administratora w ustawieniach systemu. #5427
Wysyłanie formularzy przez Ajax
Każdy formularz w Contao można teraz przesłać przez Ajax. Możesz to ustawić w konfiguracji formularza. Wtedy przekierowanie na stronę nie jest konieczne, ale możesz ustawić komunikat, który będzie wyświetlany na tej samej stronie po przesłaniu. #5307
URI oraz ID strony w dzienniku systemowym
We wpisach dziennika systemowego dla każdego wpisu jest teraz przechowywany identyfikator URI i, jeśli jest dostępny, identyfikator strony. #3694
Nowości dla programistów
Login-Rate-Limit
Login-Rate-Limit dotyczy teraz zarówno istniejących, jak i nieistniejących użytkowników. Daje to atakującym mniej możliwości sprawdzenia, które nazwy użytkowników istnieją, a które nie.
Contao wyświetla teraz również komunikat „Logowanie nie powiodło się”, jeśli wprowadzono nieprawidłowe hasło dla nieistniejących użytkowników. #5368
Background-Worker
"Background workers" umożliwiają asynchroniczne wykonywanie długotrwałych procesów, takich jak wysyłanie wiadomości e-mail lub indeksowanie stron w tle. #5405
W związku z tym otwierają zupełnie nowe możliwości dla twórców rozszerzeń i nie możemy się doczekać, aby zobaczyć, co zrobi z nimi społeczność!
Nowy moduł czytnika kanałów
Nowy moduł czytnika kanałów czyta nie tylko kanały RSS i Atom, ale także kanały JSON. #4847
Stary moduł czytnika kanałów pozostaje ze względu na kompatybilność wsteczną. Mamy więc teraz do wyboru dwa moduły frontendowe w backendzie, z których jeden został oznaczony jako „przestarzały”.
Asynchroniczne zadania cron
Zadania cron mogą być teraz wykonywane asynchronicznie. Oznacza to, że na przykład co minutowe zadanie cron nie musi już być przetwarzane sekwencyjnie, ale dzięki Promises możliwe jest również uruchomienie kilku zadań jednocześnie.
Nowa klasa ProcessUtil ułatwia również tworzenie asynchronicznych zadań cron obsługujących proces Symfony . #5554
Automatycznie dezaktywuj zadania web cron
Kolejnym ulepszeniem związanym z zadaniami cron jest nowe, automatyczne rozpoznawanie, czy prawdziwy cronjob jest dostępny przez CLI, czy nie. Wcześniej "poor man's cron" musiał być ręcznie dezaktywowany w konfiguracji (localconfig.disableCron), ale nie jest to już konieczne. Contao ma teraz ustawienie automatyczne, które jest domyślnie aktywne. W ten sposób Contao automatycznie wykrywa, kiedy prawdziwy cronjob minuta po minucie działa poprzez contao:cron i odpowiednio dezaktywuje web cronjob. #5591
Obsługa błędów w formularzach
Generator formularzy może teraz wyświetlać ogólne komunikaty o błędach w formularzu. Oznacza to, że nie muszą już odwoływać się do konkretnego pola formularza. Ta opcja jest dostępna dla programistów w hookach generatorach formularzy. #4898
MemberActivationMailEvent
Nowe zdarzenie MemberActivationMailEvent jest dostępne. Pozwala na dostarczenie e-maila aktywacyjnego z dodatkowymi prostymi tokenami, jak na przykład nasz "newsletter bundle" zawsze robił to dla ##kanałów. Dzięki temu nowemu zdarzeniu ta możliwość jest teraz dostępna dla wszystkich programistów. #5116
attributes_callback
Czasami w back-endzie bardzo pomocne jest uczynienie pewnych definicji DCA, takich jak instrukcje eval, dynamicznymi. Można sobie wyobrazić pole, które jest albo obowiązkowe -mandatory, albo nie, w zależności od innego pola. Do tej pory musiało to być realizowane na przykład za pomocą onload_callback, co ma tę wadę, że nie ma dostępnego bieżącego rekordu. Dlatego dostępna jest teraz dedykowana funkcja attributes_callback, za pomocą której można w wygodny sposób wpływać na atrybuty widget-u. #5673
Locale w Template::trans()
Dzięki różnym zmianom w Symfony i naszej podstrukturze możliwe jest teraz również przekazywanie locale w szablonach dla helpera trans().
Dziękuję, za dotarcie tak daleko. Na koniec jeszcze jedna prośba:
Istnieje wiele sposobów wspierania Contao. Każde wsparcie jest ważne. Tylko w ten sposób Contao może być dalej rozwijane w dłuższej perspektywie. Nawet liczne rozszerzenia nie mogą być brane za pewnik. Każdy cieszy się z drobnych podziękowań i nowych zamówień. W końcu wszyscy na tym korzystamy.
Wspierasz już Contao? W takim razie chciałbym skorzystać z okazji i podziękować.
Czekam na inspirujące komentarze, nie krępuj się sugerować zmiany dla Contao 5.2.