Femti handlinger av WordPress - En introduksjon

Årsaken til at WordPress er det mest populære innholdsstyringssystemet i verden, er selvsagt fleksibiliteten. Den vakkert enkle strukturen av "kroker" gir WordPress denne muligheten. Uten filter kroker og handling kroker, ville WordPress ikke være uttrekkbar så mye, og vi ville ikke kunne ha et så stort spekter av WordPress plugins eller temaer.

I denne serien skal vi gå gjennom handlinger, en av de to typer WordPress-kroker. I løpet av serien, vil vi dekke nesten alt som er å vite om handlinger:

  • I første del,som også skjer med denne artikkelen, skal vi lære hva WordPress-handlinger er og hvordan du bruker handlinger med syv kjernefunksjoner.
  • I de neste fem delene skal vi se et stort sett eksempler på WordPress-handlinger. I hver del skal vi gå gjennom 10 handlinger ved å lære hva de er gode for og gjøre ett eksempel for hver handling.
  • I serien finalen, vil vi gjenopprette det vi lærte og de 50 handlingseksemplene vi gjorde.

Det kommer til å bli lang, utrolig tur. Spenne seg fast!

Hva er en WordPress-handling?

I Codex er handlinger definert som følger:

Handlinger utløses av bestemte hendelser som finner sted i WordPress, for eksempel å publisere et innlegg, endre temaer eller vise en administrasjonsskjerm. Handling er en tilpasset PHP-funksjon definert i pluginet ditt (eller temaet) og hekta, dvs. satt til å svare, på noen av disse hendelsene.

Så, i hovedsak, er handlinger utløst av et WordPress-arrangement og kjører før eller etter hendelsen. Handlinger er en av de to slags "kroker" i WordPress - den andre kalles "filtre" som vi dekket for en stund siden - sjekk ut "Fifty Filters of WordPress" hvis du vil lære mer om WordPress-filtre.

Bruke handlinger i WordPress

Definere hvilke handlinger som er det enkleste vi skal gjøre i denne serien. Heldigvis er det nesten like lett å lære å lage og bruke handlinger. La oss se hvordan vi knytter funksjoner til handlinger, opprett nye handlinger, fjern eksisterende og andre handlingsrelaterte funksjoner i WordPress-kjerne.

Hekke en funksjon til en handling

Sannsynligvis den enkleste funksjonen blant disse er denne: Det er vant til å hekte vår funksjon til handlingen kroken vi skal bruke:

La oss se hva disse parametrene betyr:

  • $ hook_name er navnet på handlingen kroken vi skal bruke
  • $ FUNCTION_NAME er navnet på vår funksjon
  • $ prioritet er et heltall vi spesifiserer for å angi hvor tidlig funksjonen skal kjøres i handlingen krok
  • $ argumenter er antall argumenter som vår funksjon bruker og handlingen krok tillater

La oss se et raskt eksempel:

Nesten for lett, rett?

Fjerne funksjoner fra en handlingskrog

Vi har to funksjoner for å fjerne funksjoner fra handlingskroker: remove_action () og remove_all_actions (). La oss se hvordan vi bruker dem:

De remove_action () funksjonen har tre parametere: navnet på kroken, navnet på funksjonen som vi skal fjerne fra kroken og prioriteten som er satt mens du bruker ADD_ACTION (). De remove_all_actions () funksjonen har ikke den $ FUNCTION_NAME parameter, siden det fjerner alle funksjoner hekta på handlingen.

Opprette en handlingskrog

Hvis du utvikler WordPress plugins eller temaer, er det god praksis å lage noen kroker i koden din slik at andre utviklere kan forlenge ditt plugin eller tema. For å gjøre det har vi to funksjoner igjen: do_action () og do_action_ref_array (). La oss se hvordan den første fungerer:

Som du kan se, har funksjonen nesten et uendelig antall parametre siden du kan definere så mange argumenter som du trenger. Hvis du trenger å holde argumenter i en matrise, må du bruke den andre funksjonen:

Henter antall ganger en handling er avbrutt

Hvis du noen gang trenger å vite hvor mange ganger en handling kalles, kan du bruke denne praktiske funksjonen til å telle handlingssamtaler:

Som du kan se, er den eneste parameteren som funksjonen har, navnet på handlingskroken.

Kontrollerer om alt er hektet til en handling

Tenk deg at du utvikler en utvidelse for et populært WordPress-plugin, og du må sjekke om brukeren har installert pluginet eller ikke. (Tillegget vil ikke pluginet ditt fungere hvis den andre ikke er installert og aktivert.) 

For å sjekke det, kan du bruke has_action () funksjon for å sørge for at den populære pluginens handling er tilgjengelig:

Akkurat som did_action () funksjon, den has_action () funksjonen har bare en parameter: navnet på handlingen krok.

Konklusjon

Nå har vi dekket stort sett alt om å skape og bruke handlinger, vi kan fortsette med en fem artikkel-lang handlingseksempel. Vi vurderer bare femti av dem, men hvis du er nysgjerrig, kan du finne hundrevis flere i kjernen.

Jeg håper du vil nyte denne serien så mye som jeg gjorde mens du skaper det hele. Hvis du tror du kan hjelpe meg med opplæringen ved å foreslå flere handlinger og be om flere eksempler, ikke nøl med å fortelle meg og dele dine tanker ved å kommentere nedenfor. Og hvis du likte det du leser i denne serien, ikke glem å dele artiklene!

Se deg i neste opplæring!