Jak zastąpić funkcje motywu nadrzędnego w motywie potomnym?

Opublikowany: 2022-11-01

Jeśli tworzysz motyw potomny w WordPressie, prawdopodobnie zechcesz zastąpić niektóre funkcje motywu nadrzędnego. W tym artykule pokażemy, jak zastąpić funkcje motywu nadrzędnego w motywie potomnym. Najpierw musisz zrozumieć, jak WordPress ładuje funkcje. Kiedy funkcja jest wywoływana, WordPress najpierw szuka jej w motywie potomnym. Jeśli go nie znajdzie, szuka w motywie nadrzędnym. Tak więc, jeśli chcesz zastąpić funkcję, wystarczy utworzyć ją w motywie potomnym. Powiedzmy, że chcesz przesłonić funkcję get_header() motywu nadrzędnego. Po prostu utworzyłbyś funkcję get_header() w pliku functions.php motywu potomnego. Nowa funkcja wyglądałaby tak: function get_header() { // Twój kod tutaj } Teraz, gdy WordPress wywoła funkcję get_header(), użyje nowej funkcji zamiast funkcji motywu nadrzędnego. Oczywiście możesz również nadpisać funkcje, po prostu kopiując je z motywu nadrzędnego do motywu potomnego. Nie zalecamy jednak tego podejścia, ponieważ łatwo zapomnieć o aktualizacji funkcji w motywie potomnym, gdy aktualizowany jest motyw nadrzędny. Lepiej jest zastosować podejście zastępowania, aby mieć pewność, że motyw potomny zawsze używa najnowszej wersji funkcji motywu nadrzędnego.

W tym artykule dowiesz się, jak zastąpić funkcje motywu rodzicielskiego WordPressa. Możesz zmienić kolejność uruchamiania funkcji za pomocą jednej z trzech metod lub możesz w ogóle zapobiec ich wystąpieniu. Podczas tworzenia motywu nadrzędnego dobrze jest dołączyć wtyczki do funkcji, aby można je było łatwo modyfikować w motywach potomnych . Aby usunąć funkcje z motywu nadrzędnego, użyj metod remove_action() i remove_filter(). W zależności od używanego haka zostanie określony poziom priorytetu funkcji. Jeśli funkcja ma priorytet 20, przepisanie motywu potomnego o priorytecie 25 spowoduje, że będzie on zachowywał się inaczej niż podczas tworzenia funkcji. Z drugiej strony priorytety nie mają wpływu na sposób pisania nowej funkcji; po prostu wybierz, co chcesz zrobić.

WordPress Motyw potomny motywu potomnego

Zdjęcie: https://gvtechnolab.in/how-to-create-child-theme-wordpress/

Motyw potomny WordPress to motyw, który dziedziczy swoją funkcjonalność z innego motywu, zwanego motywem nadrzędnym. Motywy potomne są często używane, gdy chcesz wprowadzić zmiany w istniejącym motywie, nie tracąc możliwości aktualizacji motywu nadrzędnego. Gdy motyw potomny jest aktywny, WordPress najpierw szuka plików szablonów w katalogu motywu potomnego. Jeśli plik szablonu nie zostanie znaleziony w katalogu motywu potomnego, WordPress wyszuka ten sam plik szablonu w katalogu motywu nadrzędnego. Pozwala to na przesłonięcie dowolnego pliku szablonu w motywie nadrzędnym bez konieczności bezpośredniej edycji plików motywu nadrzędnego.

WordPress ułatwia tworzenie stron internetowych z minimalną znajomością HTML, CSS i/lub PHP. Wadą tej metody jest to, że po zaktualizowaniu motywu przez programistę wszelkie wprowadzone w nim modyfikacje zostaną utracone. Korzystanie z motywu potomnego jest znacznie lepszym pomysłem, ponieważ umożliwia wprowadzanie zmian w witrynie bez konieczności zmieniania czegokolwiek w motywie. Pliki motywów są edytowane lub zmieniane w zależności od tego, czy motyw potomny jest motywem natywnym, czy motywem zmodyfikowanym. Ponieważ zmienia tylko określone części motywu nadrzędnego, nie kopiuje wszystkiego. Aby motyw potomny działał poprawnie, muszą być obecne trzy rzeczy: folder, arkusz stylów i plik functions.php. Motyw potomny powinien zawierać własny folder, arkusz stylów i plik functions.php.

Motywy potomne znajdują się w obszarze treści/motywów WP instalacji WordPress, tak jak każdy inny motyw. Potrzebujesz tylko nazwy i szablonu motywu. Resztę należy zachować wyłącznie do celów wydawniczych, czego ja nie robię. Jeśli korzystasz z functions.php, możesz zmieniać i dodawać funkcje i funkcje do witryny WordPress. Tworzenie pliku jest tak proste, jak tworzenie arkusza stylów. Jeśli nie chcesz używać PHP do modyfikowania motywu, możesz to zrobić bez niego. Jeśli masz motyw nadrzędny, powinieneś dobrze wiedzieć, jak powinna wyglądać Twoja witryna.

Jeśli chcesz to zrobić tutaj, musisz najpierw uzyskać informacje z arkusza stylów motywu nadrzędnego. CSS i reguła @import to dwa sposoby na zrobienie tego. Jeśli wszystko pójdzie dobrze, motyw potomny powinien wyglądać tak, jak ten, który dla niego stworzyłeś. Możemy teraz zacząć dostosowywać nasz motyw i zmieniać rzeczy, aby osiągnąć pożądany rezultat. Dostępnych jest wiele opcji dostosowywania, a każdy z nich dokładnie omówimy. Style niestandardowe można dodać do motywu potomnego, który będzie miał taką samą hierarchię stylów jak motyw nadrzędny. Wykorzystana metoda może być wykorzystana do wprowadzenia dowolnej liczby zmian na swojej stronie internetowej.

Zawsze dobrze jest zachować strukturę folderów motywu potomnego w tej samej kolejności, co w motywie nadrzędnym. Jeśli plik o nazwie page-templates w motywie nadrzędnym zawiera folder o nazwie page-templates, możesz utworzyć folder o tej samej nazwie w katalogu motywu podrzędnego. Po prostu zmieniamy nazwę page.php z motywu nadrzędnego na custom-full-width.php, aby utworzyć nasz niestandardowy szablon strony. Pierwszym przykładem jest funkcja footer-custom.php, która dodaje klasę o pełnej szerokości do elementu stopki, jak pokazano poniżej. Teraz wystarczy wpisać kod w arkuszu stylów poniżej. To jest nasza strona o pełnej szerokości. Mimo że mogło być trochę polerowania, na razie powinniśmy być zadowoleni z wyniku.

Zaczepy tematyczne umożliwiają dostosowanie motywu potomnego bez konieczności edytowania jego podstawowych plików. Możesz od razu dodać zawartość do motywu, na przykład funkcje, używając haka motywu. Haczyki występują w dwóch odmianach: haczyki akcji i haczyki z filtrem. Funkcjonalność niestandardową można dodać do istniejącej funkcji za pomocą zaczepów akcji, natomiast funkcja filtrowania może modyfikować daną funkcję. Tworzenie motywu potomnego w WordPressie jest proste; wystarczy jeden wiersz kodu. W tym przypadku celem jest funkcja kredytowania stopki w motywie Twenty Piętnaście. Jeśli używasz opcji functions.php , upewnij się, że zmodyfikowany plik footer.php w motywie potomnym również został usunięty.

Haki w motywach potomnych mogą rozszerzyć zakres dzieła sztuki Twojego dziecka. Dzięki motywowi potomnemu możemy całkowicie dostosować stronę internetową bez modyfikowania podstawowych plików. W rezultacie, jeśli chcesz dodać motyw lub ramy, możesz to zrobić bez pisania od zera; Twoje zmiany są chronione przed aktualizacjami motywu; a jeśli coś pójdzie nie tak, zawsze będziesz mieć funkcjonalny motyw .

3 powody, dla których warto użyć motywu potomnego

Istnieje kilka powodów, dla których warto użyć motywu potomnego. Możesz dodać więcej dostosowań do istniejącego motywu. Jeśli chcesz dostosować wygląd witryny, możesz to zrobić za pomocą motywu, który ma już funkcję dostosowywania. Jeśli nie masz czasu lub wiedzy, aby zmodyfikować oryginalny kod, możesz użyć motywu. W większości przypadków korzystanie z motywu potomnego jest najwygodniejszym sposobem uzyskania pożądanych rezultatów. Jeśli użyjesz dobrego motywu nadrzędnego , zauważysz i zrozumiesz wprowadzane zmiany. Jedną z wielu zalet korzystania z motywu potomnego jest to, że można utworzyć motyw specyficzny dla Twojego dziecka, ale ma on pewne wady. Motywy potomne mogą kolidować z innymi wtyczkami, motywami lub możliwościami dostosowywania, które utworzyłeś. Drugi problem z WordPress polega na tym, że motywy potomne nie działają ze starszymi wersjami platformy. Wszystkie motywy potomne nie zawsze są kompatybilne ze wszystkimi wtyczkami WordPress. Korzyści z używania motywu potomnego znacznie przewyższają wady korzystania z motywu nadrzędnego. Nadal możesz chcieć użyć wersji demonstracyjnej lub wypróbować motyw podrzędny przed jego opublikowaniem.

Jak dodać funkcje PHP w motywie potomnym

Obraz: https://www.wpbeaverbuilder.com/redirect-wordpress-page/

W naszym przypadku php będzie musiało tylko utworzyć plik o nazwie „funkcje”, abyśmy mogli zapisać go w naszym folderze motywu potomnego. Aby zapisać tagi php, które znajdują się w edytorze tekstu, wprowadź tagi otwierające i zamykające PHP i zapisz je jako funkcję. Masz też opcje. Pierwszy plik funkcji zostanie przesłany do folderu motywu podrzędnego po przesłaniu.

W tym samouczku dowiemy się, jak dodawać funkcje do motywu potomnego WordPress. W motywie Twenty Twelve nadamy metainformacjom posta inny wygląd. W tym samouczku dowiesz się, jak dodawać funkcje do motywów podrzędnych w ramach serii. Kiedy spojrzymy na plik functions.php zawarty w Twenty Twelve, widzimy, że jego nagłówek zawiera bardzo ciekawą linię. Funkcje wtykowe są opakowane w takie wywołanie. Funkcja dwadzieściatwelve_nice_function (zakładając, że istnieje) zostałaby załadowana tylko wtedy, gdyby nie istniała w motywie nadrzędnym. Aby utworzyć pusty plik, wpisz functions.php do naszego folderu motywu potomnego.

W tym samouczku będziemy modyfikować domyślne wyjście motywu Twenty Twelve. Zostanie utworzony nowy podział do obsługi funkcji, która generuje sformatowany ciąg dla wiersza metainformacji postu. Musimy mieć reguły CSS elementu child-custom-meta div przed jego utworzeniem. Nowy plik functions.php i nowy plik style.html muszą zostać przesłane do folderu motywu potomnego.

Jak uzyskać dostęp do plików w motywie potomnym?

Struktura folderów motywu potomnego umożliwia modyfikowanie określonych plików w motywie. Aby rozpocząć, folder motywu potomnego musi znajdować się w Twojej witrynie. Następnie użyj następującej ścieżki: br>a href=www.twojadomena.com/br>www.twojadomena.com/folder motywu nadrzędnego/br>www.twojadomena.com/folder motywu podrzędnego/br>/a> Jeśli motyw podrzędny znajduje się w witrynach/blog/motywy/motyw potomny, na przykład motyw nadrzędny będzie znajdował się w witrynie witryny/blog/motywy/motyw potomny. Upewnij się, że dokonano zmian w nagłówku. Będziesz mógł odczytać plik, przechodząc na przykład do witryny/bloga/motywów/motywu podrzędnego/nagłówka. Jeśli chcesz zmodyfikować cały motyw nadrzędny , a nie określone pliki w motywie potomnym, możesz uzyskać dostęp do plików motywu nadrzędnego przy użyciu struktury folderów motywu nadrzędnego. Na początek upewnij się, że masz w swojej witrynie folder motywu nadrzędnego. Oto następny krok. www.sitename.com/ Jeśli motyw nadrzędny znajduje się na przykład w witrynie sites/blog/themes/default, będą tam znajdować się pliki motywu nadrzędnego.