Action/Filter Hooks – podczep się do WP

Marek Buga
Marek Buga
Streszczenie: Ten wpis ma to do siebie, że będzie się utrzymywał długo, jak smak maraQi na języku po spożyciu...

Zaczepy WordPress – czym są naprawdę?

Na podstawie: WordPress Hooks – stwierdzamy, że nasze Zaczepy to:

WordPress Hooks, definicja wordpress.org(tłumaczenie i dopiski własne):

Zaczepy to sposób dla Porcji Kodu(najczęściej funkcji specjalnie napisanej do konkretnego hooka) na interakcję z inną Porcją Kodu w specyficznych, z góry przewidzianych miejscach(mamy dostęp w prawie każde miejsce w WordPress). Zapewniają możliwość działania Motywom i Wtyczkom, ale są także mocno używane przez Rdzeń WordPress’a.
Zaczep, Hak(ang. Hook)

Gniazdo – końcówka oprogramowania WordPress, do której możesz podpiąć swój dowolny kod PHP(w tym także wywołać JavaScript) za pomocą Funkcji dla Zaczepu, która po zdeklarowaniu wymaga jeszcze podpięcia do Zaczepu.

Podpięcie Funkcji do Zaczepu

WordPress’owa metoda

add_action
służąca do

Zaczepy dzielą się zasadniczo na dwa typy i bardzo często młodzi programiści nie rozumieją tej różnicy, postaram się ją wyjaśnić tutaj nadal trzymając się historii o Kolejce:

Akcje vs Filtry

Akcje to dowolne działania wykonane na wskazanej(Zaczepem) stacji kolejowej. Co do zasady, nie czekamy na tej stacji, bo nie oczekujemy żadnego zwróconego rezultatu(returna). Działaniem dla akcji(Porcja Kodu – funkcja PHP) może być np. poczta kolejowa – wysłanie wiadomości e-mail w przypadku WordPress’a.

Filtry to działania wykonane na przekazanych już danych, oczekujemy także returna, czyli zwróconej wartości. W naszej Kolejce filtrem jest posprzątanie wagonu. Dane wejściowe to tablica ze statusami czystości elementów wagonu. Po wykonaniu oczekujemy otrzymanie raportu z nowymi statusami czystości elementów wagonu.
Priorytet Zaczepu(ang. Hook priority)

Priorytety służą modyfikacji kolejności wykonywania Funkcji podpiętych do Zaczepu. Jeśli do jednego Zaczepu wpięto więcej niż jedną Funkcję i zależy Ci, aby wykonać swój kod przed/po tej Funkcji, to musisz nadać odpowiedni priorytet. Możesz zmieniać priorytety już podpiętych Funkcji do Zaczepów, o ile ten Zaczep się jeszcze nie Wykonał.

Priorytety wyrażane są liczą naturalną, a domyślna wartość w WordPress to 10

Akcją go czy Filtrem? Porównanie na przykładach

Przestroga dla młodych Webmasterów

Zależnie od tego ile wtyczek oraz jakie obciążenie do swojego pociągu przyłożysz, taki efekt uzyskasz. WordPress jest tak zbudowany, że przeciążając tylko jedną stację, możesz wykoleić cały pociąg, albo sprawdzić, że będzie od teraz jechał na pół gwizdka.

To jest miejsce w którym musisz sobie uświadomić – Twój WordPress, Twoja odpowiedzialność. Nikt nie zabroni Ci instalować dwóch wtyczek do Cache, kilku Builderów i szablonów które same często są pół-Builderami.

Od głupoty też mało kto Cię przestrzeże…

Dostajesz narzędzie o ogromnych możliwościach, ale czy nie przestrzelisz wybierając się na polowanie po kolejną wtyczkę?

Twój pociąg może przemierzać bardzo dziwne miejsca, a nieraz wracać tam gdzie był dosłownie przed chwilą. Wyobrażasz sobie jakie to kosztowne? Na szczęście w świecie IT trochę mniej, ale coraz bardziej restrykcyjne algorytmy Google, również na to zwracają uwagę…

Zasiej to:

Share on facebook
Facebook
Share on twitter
Twitter
Share on pinterest
Pinterest
Share on linkedin
LinkedIn

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *

TL;DR
Too Long;
Didn’t Read

Spis treści

On Key

Podobne do tego wpisu:

NAJSILNIEJSZE: Marka, Logo i Produkt

Najsilniejsza marka? Jezus Chrystus Najsilniej działający symbol(Logo)? Krzyż Chrystusa Najbardziej znany, najczęściej podrabiany, bardzo pożądany i najmniej dostępny Produkt? Miłość

Hołd w stronę Open Source. Co to? Po co to? Dlaczego to?

Na początku działalności blogowej, chciałbym ukłonić się w stronę ludzi, dzięki którym mogę tak po prostu zacząć to robić. Mogę korzystać z technologii, która jest owocem nieprzespanych nocy tęgich głów. Dana jest za darmo. Czy Ty też to doceniasz?

Ta witryna używa ciasteczek. Zgadzasz się na to?