✅ Nowości, motywy, wtyczki WEB i WordPress. Tutaj dzielimy się wskazówkami i najlepszymi rozwiązaniami dla stron internetowych.

Sprawne przekazywanie zmiennych do szablonu WordPress

64

Jednym z wyzwań, przed którymi stoją twórcy motywów lub wtyczek, get_template_partjest brak możliwości przekazywania zmiennych do załadowanego szablonu WordPress. Istnieje jednak alternatywa przy użyciu locate_template.

Przegląd

W tym przykładzie wyświetlimy trzy wpisy Easy Digital Download. Używam EDD od jakiegoś czasu i chociaż ma wiele funkcji, wciąż jest zaskakująco lekki.

Pobieramy wpisy i zapisujemy je w zmiennej $edd_download. Następnie załadujemy szablon WordPress, przekazując zmienną. W rzeczywistości przekazanie zmiennej to powiedzenie za dużo: po prostu załadujemy szablon w taki sposób, że $edd_downloadzmienna ma odpowiedni zakres do użycia w załadowanym szablonie.

Ładowanie szablonu WordPress

Ten kod można umieścić w funkcji. Następnie możesz podłączyć tę funkcję do obszaru swojego motywu za pomocą zaczepu akcji lub po prostu wywołać funkcję jako znacznik szablonu. W moich motywach używam hooków, aby użytkownicy mogli później dodawać lub usuwać treści. To wszystko, czego potrzebujemy do kodu:

Kod szablonu

Teraz potrzebujemy pliku szablonu WordPress. Jeśli zauważysz powyższe wywołanie, locate_templatespodziewa się znaleźć plik download-home.phpw katalogu partswewnątrz folderu motywu.

Musimy zawsze pamiętać o wywołaniu wp_reset_postdata()po pętli foreach, jeśli wywołaliśmy setup_postdata().

Słowa zamykające

Więc po tym wszystkim, dlaczego jest to przydatne? ponieważ użytkownicy mogą utworzyć szablon w motywie podrzędnym i łatwo zastąpić oryginalny szablon. Chodzi o ułatwienie życia Twoim użytkownikom. Oczywiście, można to również osiągnąć poprzez filtry lub tworzenie funkcji wtykowych, ale niektórzy użytkownicy mogą uznać edytowanie szablonu skupionego na jednym zadaniu za czystsze podejście niż zajmowanie się plikiem z wieloma funkcjami dla kilku różnych i niepowiązanych zadań.

Źródło nagrywania: startfunction.com

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów