Czym są haki WordPress? W jaki sposób akcje i filtry pomagają rozszerzyć funkcjonalność?
Opublikowany: 2018-06-13
Ostatnia aktualizacja - 9 października 2020 r.
Jeśli kiedykolwiek pracowałeś nad WordPressem, musiałeś wielokrotnie natknąć się na słowo ' Hook '. Jeśli jesteś programistą WordPress, który chce tworzyć wtyczki i motywy, to haki WordPress są kluczowe dla twojego rozwoju.
Ale czym właściwie są haki?
Zgodnie z kodeksem WordPress.org, „ Haki są dostarczane przez WordPress, aby umożliwić Twojej wtyczce „zaczepienie się” w pozostałej części WordPressa; to znaczy wywoływać funkcje we wtyczce o określonych porach, a tym samym wprawiać wtyczkę w ruch.”
Ogólnie rzecz biorąc, haki łączą jedną rzecz z drugą. W terminologii WordPress łączy (łączy) kod zdefiniowany przez użytkownika z istniejącym kodem rdzenia WordPress.
Po prostu wyjaśnijmy to.
WordPress jest zbudowany z pewną domyślną funkcjonalnością. Ma domyślne zachowanie i powiązane z nim wartości. Za pomocą haków możesz zmodyfikować te domyślne zachowanie i zastąpić istniejącą wartość, dostosowując w ten sposób środowisko WordPress do swoich potrzeb.
Rodzaje haków
Istnieją dwa rodzaje hooków:
- Hooki akcji — używane do wykonania w pewnym momencie wykonania, zmieniając domyślny przepływ wykonania. Oto lista haczyków akcji WordPress.
- Zaczepy filtrów — nieco różniące się od haków akcji. Zaczepy filtrów służą do modyfikowania domyślnych danych WordPress i zastępowania ich wartością niestandardową, zanim zostaną wyświetlone użytkownikowi w interfejsie użytkownika lub zapisane w bazie danych. Listę haczyków filtrów można znaleźć w Kodeksie WordPressa.
Zasadniczo haki są same w sobie predefiniowanymi funkcjami. Stąd dwa rodzaje funkcji związanych z haczykami to:
- Funkcje akcji — te funkcje są przydatne w przypadku publikowania bloga, ładowania strony i tak dalej.
Oto niektóre z funkcji akcji:- add_action()
- zrobił_działanie()
- robi_działanie()
- zrób_działanie()
- do_action_ref_array()
- has_action()
- usuń_działanie()
- usuń_wszystkie_działania()
- Funkcje filtrowania – Każda funkcja filtrowania zwraca pewną wartość i zastępuje ją domyślnymi danymi WordPress.
Funkcje filtrowania obejmują:- dodaj_filtr()
- zastosuj_filtry()
- Apply_filters_ref_array()
- bieżący_filtr()
- robi_filtr()
- has_filter()
- usuń_wszystkie_filtry()
- usuń_filtr()
Infografika
Obserwuj poniższą infografikę, aby lepiej zrozumieć, jak działają haki.

Jak pokazano na powyższej infografice, funkcje Action i Filter wykorzystują odpowiednie hooki do modyfikacji podstawowego kodu WordPressa.
Jak wygląda hak?
Typowy hak Action przybiera następującą postać:
add_action ( 'hak', 'twoja_niestandardowa_nazwa_funkcji', [priorytet], [akceptowane_parametry] ); funkcja twoja_niestandardowa_nazwa_funkcji() { //Twój niestandardowy kod }
Gdzie hook jest nazwą podpięcia, twoja_niestandardowa_funkcja_nazwa to nazwa funkcji z twoim niestandardowym kodem, opcjonalnym parametrem priorytetu , który wskazuje, jak ma zostać wykonane podpięcie, akceptowanymi parametrami wskazującymi dodatkowe parametry i niestandardowym kodem. The wywołanie funkcji ( add_action()) może znajdować się poniżej lub powyżej fragmentu kodu.
Hak filtra ma następującą postać:
add_filter( 'filtr', 'nazwa_twojej_niestandardowej_funkcji', 'priorytet', 'zaakceptowane_argumenty' ); funkcja twoja_niestandardowa_nazwa_funkcji($zmienna) { //Twój niestandardowy kod zwrócić; }
Gdzie add_filter() to jeden funkcji Filter hook, filter to nazwa filtra, którego zamierzasz użyć, twoja_niestandardowa_nazwa_funkcji to nazwa funkcji zdefiniowanej przez użytkownika, parametr priorytet wskazuje kolejność wykonania podpięcia, accept_args wskazuje argumenty do przekazania, a niestandardowy kod z obowiązkową wartością zwracaną.

Podobnie jak WordPress, dostępne są również haki dla WooCommerce. Te haki są szeroko wykorzystywane do tworzenia wtyczek, motywów i dostosowywania procesu WooCommerce Checkout.
Przeczytaj Hooki WooCommerce: Akcje i filtry w dokumentacji WooCommerce, aby szczegółowo zrozumieć hooki WooCommerce.
Demonstracja
Rozumiemy hooki przy użyciu przykładowych fragmentów kodu.
Akcja Hak i funkcja
//Dodanie haka akcji funkcja my_action_hook() { echo "<p align='center'>To jest przykład przechwytu akcji</p>"; } add_action( 'get_header', 'my_action_hook' );
W powyższym fragmencie kodu „my_action_hook” to nazwa funkcji niestandardowej, „add_action” to jedna z funkcji Action, a „get_header” służy do dostosowania nagłówka szablonu. W podanym fragmencie kodu wyświetlamy tekst „This is an Action Hook Demo” w sekcji nagłówka witryny.
Przykładowy zrzut ekranu przedstawiający zastosowane zmiany we fragmencie kodu pokazano poniżej.

Hak i funkcja filtra
//Dodanie haka filtra add_filter('woocommerce_get_price_html','my_filter_hook'); funkcja my_filter_hook ($cena){ return 'Za jedyne '.$cena; }
W powyższym fragmencie kodu „woocommerce_get_price_html” to haczyk WooCommerce do uzyskania ceny produktu, „my_filter_hook” to nazwa filtra zdefiniowanego przez użytkownika, a „$price” to zmienna zdefiniowana przez użytkownika. Fragment kodu po prostu dodaje przedrostek „Za jedyne” do ceny produktu.
Poniższy zrzut ekranu pokazuje, jak fragment kodu wpływa na nasz sklep WooCommerce.

To tylko prosty przykład, jest wiele rzeczy, które możesz osiągnąć dzięki hookom.
W jaki sposób akcje i filtry pomagają rozszerzyć funkcjonalność?
- Główną zaletą korzystania z hooków jest to, że pomaga w dostosowaniu podstawowego kodu WordPressa.
- Wszelkie zmiany w rozwoju można uważnie monitorować, ponieważ modyfikacja jest minimalna, a nie wielokrotnie w kodzie.
- Tworzenie nowych wtyczek jest znacznie łatwiejsze dzięki metodzie „wypróbuj i przetestuj”.
- Do tworzenia motywów można tworzyć motywy potomne i bawić się haczykami bez wpływu na motyw nadrzędny.
- Jest to prosta, łatwa w użyciu oferta WordPress, która ma zrozumiałą strukturę i szczegółową dokumentację dla każdego odniesienia.
- Obsługuje WooCommerce, najpopularniejszą wtyczkę eCommerce WordPress. Wtyczki cenowe WooCommerce w znacznym stopniu zmieniają ceny produktów, kalkulacje cen oraz oferują dynamiczne ceny i rabaty za pomocą haków WooCommerce. Szczegóły zamówienia, informacje o produkcie, szczegóły wysyłki między rzeczami można stukać za pomocą niestandardowych haczyków.
Uwagi końcowe
WordPress Hooki to kluczowy mechanizm tworzenia wtyczek i motywów. Są szeroko stosowane do modyfikowania istniejącego kodu WordPress w celu dostosowania strony internetowej. Chociaż haki mają wiele zalet, należy upewnić się, że każdy niestandardowy haczyk jest unikalny i nie nakłada się na inny haczyk o tej samej nazwie. Nawet w takim przypadku możesz przypisać priorytet do wykonania haczyków zgodnie ze swoimi potrzebami.
Zapoznaj się z naszymi artykułami na temat dostosowywania WooCommerce, aby uzyskać wskazówki dotyczące dostosowywania sklepu WooCommerce.
Lub kontynuuj odkrywanie LearnWoo, aby znaleźć więcej niesamowitych artykułów.