Przygotowanie do WordPress 5.4: Zmiany motywów i wtyczek, o których powinni wiedzieć programiści
Opublikowany: 2020-03-05Wraz z nadchodzącym wydaniem WordPress 5.4 nadszedł czas, aby twórcy wtyczek i motywów zaczęli testować swoje rozszerzenia i upewnić się, że nie ma problemów. Dostępne są również nowe interfejsy API dla nadchodzących funkcji. Wczoraj główny zespół wydał pierwszego kandydata do wydania wersji 5.4. Oficjalna premiera planowana jest na 31 marca.
Ten post będzie krótkim przewodnikiem z linkami do kilku ważnych zmian, o których programiści muszą pamiętać w nadchodzących tygodniach. Przetestuj swoje wtyczki i motywy.
Twórcy motywów

Istnieje kilka zmian, z którymi autorzy motywów będą chcieli przetestować. WordPress 5.4 ma kilka dodatkowych funkcji tematycznych. Zawiera również kilka zmian związanych ze znacznikami, które mogą zepsuć projekty motywów na interfejsie użytkownika i w edytorze bloków. Niestety, dla autorów motywów, którzy chcą obsługiwać wiele wersji WordPressa, niektóre z tych zmian mogą oznaczać trochę dodatkowego rozdęcia CSS.
Ikony społecznościowe i bloki przycisków
WordPress 5.4 wprowadza dwa nowe bloki: ikony społecznościowe i przyciski. Blok ikon społecznościowych umożliwia użytkownikom wstawianie ikon/łączy do 40 różnych sieci społecznościowych. Blok przycisków umożliwia użytkownikom grupowanie wielu bloków przycisków. Autorzy motywów, którzy wdrażają niestandardowe style edytora bloków, muszą uwzględnić te nowe bloki, aby upewnić się, że są one poprawnie drukowane.
Twórz niestandardowe ustawienia gradientu
Nowy interfejs API Gradients umożliwia autorom motywów definiowanie niestandardowych ustawień gradientów, których użytkownicy mogą używać z blokami grup lub przycisków. Autorzy motywów będą musieli trochę popracować, aby poprawić brzydkie wrażenie, które są domyślnymi ustawieniami gradientu. Przy odrobinie pracy gradienty mogą być użytecznym narzędziem do dyspozycji użytkownika. Autorzy motywów mogą również całkowicie wyłączyć gradienty, jeśli wolą ich nie obsługiwać.
Zmiany znaczników i stylów edytora bloku
Autorzy motywów, którzy bezpośrednio celowali w określone klasy edytorów, będą musieli sprawdzić swoje style edytora bloków. Wiele klas z przedrostkiem editor- zostało zmienionych tak, aby używały przedrostka block-editor- . Element opakowania z .edit-post-layout__content został całkowicie usunięty. Kilka elementów opakowujących zostało usuniętych z bloków i komponentu tekstu sformatowanego. Wbudowane dopełnienie rdzenia i ujemne marginesy na blokach zostały zrefaktoryzowane, co jest mile widzianym dodatkiem. Być może autorzy motywów nie będą już musieli walczyć z wieloma zagnieżdżonymi selektorami, aby zapewnić podstawowy, działający układ, który pasuje do interfejsu.
Te zmiany zepsuły już kilka wątków, które widziałem. Istnieje duża szansa, że wielu autorów motywów będzie musiało zaktualizować swoje style edytora bloków.
W czasie, gdy zespół recenzji motywów prosi więcej autorów motywów o przesłanie motywów z niestandardowymi stylami edytora, tego typu zmiany w klasach i znacznikach nie zwiększają pewności siebie. Twórcy motywów mogą łatwo poczuć, że toczą przegraną bitwę. Jednak prace posuwają się naprzód, aby zbliżyć znaczniki edytora do dopasowania jeden do jednego z interfejsem. W pewnym momencie autorzy motywów mogą mieć tylko nadzieję, że nie będą już musieli zajmować się tego rodzaju zmianami, jednocześnie wspierając użytkowników w wielu wersjach WordPressa. Na razie znajdują się w nieco niechlujnej fazie przejściowej.
Oznaczenia kalendarza i zmiany klas
Główny zespół zmienił znaczniki funkcji get_calendar() , która ma również wpływ na widżet Kalendarza. Dane wyjściowe kalendarza nie zawierają już elementu <tfoot> . Zamiast tego linki z poprzedniego i następnego miesiąca zostały przeniesione do elementu <nav> poniżej elementu <table> .
Dane wyjściowe kalendarza również dodają lub zmieniają wiele identyfikatorów i klas:
-
.wp-calendar-tabledodany do elementu opakowania. -
.wp-calendar-navdodany do elementu opakowania nawigacji. -
.wp-calendar-nav-nextzastępuje#nextID na łączu w następnym miesiącu. -
.wp-calendar-nav-prevzastępuje identyfikator#prevw linku z poprzedniego miesiąca.
To przełomowe zmiany. Każdy niestandardowy kod CSS, który był kierowany na stary kod HTML lub identyfikatory, będzie musiał zostać zaktualizowany.

Blokuj programistów

Dla twórców wtyczek, którzy tworzą niestandardowe bloki, WordPress 5.4 wprowadza kilka nowych interfejsów API i narzędzi do pracy z systemem bloków.
Rusztowanie blokowe
Deweloperzy mają nowy pakiet NPM do szybkiego tworzenia wtyczki blokowej. Za pomocą pojedynczego polecenia npm init @wordpress/block <plugin-name> skrypt utworzy nowy katalog i zbuduje odpowiednie pliki PHP, CSS i JavaScript niezbędne do zbudowania wtyczki blokowej. Deweloperzy mogą domyślnie korzystać z nowoczesnych narzędzi JavaScript lub opcjonalnie wybrać wersję ES5.
Intencją pakietu rusztowania blokowego jest to, aby autorzy wtyczek budowali wtyczki jednoblokowe, które ostatecznie trafią do oficjalnego katalogu bloków.
Blokuj kolekcje API
Interfejs Block Collections API działa podobnie do kategorii. Jednak są one oparte na przestrzeni nazw. Kiedy twórca wtyczki zarejestruje niestandardową kolekcję, wszystkie bloki, które współdzielą przestrzeń nazw kolekcji, pojawią się pod niestandardową sekcją w module wstawiania bloków. Wydaje się, że jest to mądrzejszy sposób organizowania bloków. Z pewnością przyda się w przypadku wtyczek tworzących biblioteki bloków, zapewniając automatyczny sposób ich grupowania.
Odmiany bloków API
Nowy interfejs API odmian bloku pozwala programistom bloków zasadniczo tworzyć kopie bloku z odmianą. Każda zarejestrowana odmiana pojawi się jako osobny blok w module wstawiającym bloki, z którego użytkownicy będą mogli wybierać.
Dobrym przykładem tej funkcji jest nowy blok ikon społecznościowych. Jest to pojedynczy blok z 40 odmianami dla różnych sieci społecznościowych.
Inne zmiany związane z programistami
Jest kilka innych ważnych zmian, które przecinają się zarówno na terytorium rozwoju wtyczek, jak i motywów.
Nowe haki menu nawigacyjnego
Po czekaniu i czekaniu, programiści w końcu dostają kilka często oczekiwanych haczyków do dodawania niestandardowych pól do ekranu administratora i dostosowywania menu nawigacyjnego. Co najmniej jeden bilet ma 9 lat wstecz, ale lepiej późno niż wcale. W przeszłości programiści musieli używać niestandardowej klasy chodzika, aby dokonać niektórych niezbędnych dostosowań. Jednak w danym momencie można było używać tylko jednej klasy walkera, co oznaczało, że wiele wtyczek, które wprowadzały zmiany, nie działałoby razem.
Główny zespół dodał nowy hak wp_nav_menu_item_custom_fields na ekranie administratora menu nawigacji, który pojawia się przed przyciskami „przenieś” dla poszczególnych elementów menu. Aby zapewnić zgodność z administratorem, elementy menu nawigacyjnego mają nowy wp_nav_menu_item_custom_fields_customize_template w konfiguratorze. Te haki pozwolą programistom dodawać niestandardowe pola formularzy niezbędne do dodawania niestandardowych danych do elementów menu nawigacyjnego.
Apply_shortcodes() Funkcja aliasu
WordPress 5.4 wprowadza nową apply_shortcodes() . Jest to alias funkcji do_shortcode() . Nowa funkcja zapewnia bardziej poprawną semantycznie nazwę funkcji. Generalnie, funkcje z przedrostkiem do_ oczekują wyjścia lub jakiegoś rodzaju akcji. Funkcje z przedrostkiem apply_ oczekują zwrócenia danych.
Jeśli tworzysz motyw lub wtyczkę z obszarami obsługującymi krótki kod, będziesz chciał przełączyć się na nową funkcję. Chociaż funkcja do_shortcode() nie jest obecnie oznaczona do wycofania, powinien to być ostateczny cel.
