Abbiamo già trattato molti argomenti sullo sviluppo di software con WordPress e durante queste sessioni hai sicuramente sentito parlare di filtri e azioni.

Questi sono una parte essenziale dell'architettura di WordPress. E hai l'opportunità di crearne di nuovi per soddisfare le tue esigenze.

In una parola, un'architettura " evento È una tecnica che permette di ascoltare il verificarsi di un evento e di agire di conseguenza o sull'evento in questione o su un altro aspetto. La tua reazione, ciò che stai scrivendo, è come puoi creare la funzionalità che desideri, per estendere la funzionalità di WordPress.

Ecco un esempio molto semplice, la pubblicazione di un post di WordPress è un evento di esempio (publish_post) che modifica uno stato.

Questa è la base dell'estensibilità di WordPress, che lo rende uno degli ecosistemi CMS più ricchi, fiorente con migliaia di temi e plugin altrettanto ricchi di funzionalità.

C'è un altro motivo fondamentale per cui l'uso delle parentesi quadre è così importante. Utilizzando le parentesi quadre, puoi estendere e creare su WordPress senza modificare il codice sorgente di WordPress.

In effetti, lasciami riformulare questa affermazione.

Se qualcuno che ti sta assumendo (o stai assumendo) per un lavoro su WordPress ti suggerisce di cambiare il codice sorgente di WordPress, ferma tutto a posto.

Chiunque sia disposto a rompere la scalabilità del tuo sito WordPress non ha idea di cosa stia parlando. Se queste persone si preoccupassero della sicurezza, non lo avrebbero nemmeno considerato.

Abbiamo già parlato prima. L'aggiornamento di WordPress (anche per i suoi temi e plugin) all'ultima versione disponibile è una delle basi stesse della sicurezza di WordPress. Gli sviluppatori che modificano il codice sorgente del tuo sito lo lasceranno sicuramente interrompendo il ciclo di aggiornamento di WordPress (in caso contrario la loro modifica verrà sovrascritta al prossimo aggiornamento).

Se invece utilizzi hook e tutte le altre opzioni di estensibilità che WordPress ti mette a disposizione, la scalabilità del tuo blog WordPress sarà assicurato.

condividere e filtro wordpress

Hook, azioni o filtri? Cosa significa ?

Gli hook sono fondamentalmente eventi che si verificano durante l'esecuzione di qualsiasi funzionalità, tema o plug-in di WordPress.

Ma perché si chiamano davvero ganci?

Gli sviluppatori che desiderano estendere o implementare funzionalità specifiche possono "appendereAgli eventi non appena vengono attivati.

Mentre WordPress passa attraverso le sue fasi di esecuzione, verifica se un plugin (o tema) ha registrato una funzione da eseguire in quel momento, se viene trovata una funzione, verranno eseguite in quel momento.

Il WordPress codice, come parte della documentazione API di WordPress, spiega correttamente Hook, azioni e filtri, Fornirò comunque alcuni dettagli utili:

Ci sono due tipi principali di ganci:

  • azioni (o anche "action Hooks")
  • (filtrio anche "Filter hook")

In realtà, questi sono abbastanza simili nella loro capacità di raggiungere, ma ci sono alcune sottili differenze.

La differenza tra azioni e filtri

Cominciamo con le somiglianze prima di parlare delle differenze:

  • Ricevono azioni e filtri dati attraverso una serie di parametri.
  • Le azioni e i filtri sono anche, il più delle volte in grado di fare la stessa cosa (se dai un'occhiata al codice sorgente di WordPress, vedrai che le funzioni implementate per le azioni sono solo inviluppi di funzioni di filtro).

Vi sono, tuttavia, una differenza essenziale tra questi due tipi di ganci WordPress.

I filtri sono necessari per restituire un valore, le azioni non lo fanno.

In sostanza, con un filtro, la funzione " adunco Ottiene un valore specifico come parametro, fa il suo lavoro e quindi restituisce una versione modificata (o meno) di questo valore.

Un'azione non deve restituire un valore.

In termini più pratici, con un filtro, di solito lavorerai sul contenuto, rendilo tuo modifiche", Quindi restituisci questo contenuto. Ad esempio, come vedremo di seguito i filtri " title_save_pre Che è un filtro sul titolo di un articolo, mentre il content_save_pre Quale è un filtro sul contenuto di un articolo.

D'altra parte, un '"Azione" fa qualcosa (chi sa gestire dati o semplicemente usa questi dati) quando si verifica un evento. L'azione publish_post "Si attiva quando viene pubblicato un articolo.

Quando e come utilizzare un azione

Si utilizza un'azione quando:

  • Si desidera iniettare codice HTML o altro contenuto nel buffer.
  • Modificare una o più variabili globali
  • Modifica le impostazioni passate alla tua funzione

Ecco come aggiungere un'azione:

add_action ($ gancio, $ function_to_add, $ priorità, $ accepted_args);

dove "$ hook" sarebbe l'azione che vuoi agganciare, "$ function_to_add" è la funzione che verrà eseguita quando questo hook viene attivato.

Quando e come utilizzare un filtro

Puoi usare un filtro quando devi fare tutto quanto sopra, ma vuoi anche cambiare un'impostazione che verrà usata da WordPress.

In realtà, non è solo un'esigenza, ma un requisito. È necessario restituire un valore per il parametro se si utilizza un filtro.

Il modo per aggiungere un filtro è abbastanza simile a quello delle parentesi:

add_filter ($ gancio, $ function_to_add, $ priorità, $ accepted_args);

Dove ancora, "$ hook" sarebbe il filtro da usare e "$ function_to_add" è la funzione che dovresti scrivere. Leggere documentazione WordPress i ganci per più.

Rimozione di un filtro o di un'azione

Proprio come aggiungi Azioni e Filtri, puoi anche eliminarli. Questo è l'opposto dell'aggiunta di Azioni e Filtro, ma la sintassi è molto simile:

remove_action ($ gancio, $ function_to_remove, $ priorità); remove_filter ($ gancio, $ function_to_remove, $ priorità);

Dove "$ priorità" è un argomento opzionale.

Sia in "add_filter" che in "remove_filter", "$ prioirity" determina l'ordine in cui si attivano gli hook. Se sono presenti più hook "concatenati", verranno eseguiti uno dopo l'altro.

Semplice esempio: come aggiungere il codice di monitoraggio di Google Analytics a WordPress

Ricorda che ti abbiamo già mostrato come creare un WordPress Plugin. Ora tutto ciò che devi fare è aggiungere il seguente codice nel tuo WordPress Plugin.

// Funzione di Google Universal Analytics google_analytics () {?>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
 
  ga('create', 'GA-XXXXXX-XX', 'auto');
  ga('send', 'pageview');

Questo è tutto per questo tutorial. Spero che ora saprai come distinguere tra filtri e azioni su WordPress. Se avete domande, non esitate a porle.