Students Save 30%! Learn & create with unlimited courses & creative assets Students Save 30%! Save Now
Advertisement
  1. Code
  2. Creative Coding
Code

La Guida WordPress per principianti : Filtri ed Azioni

by
Length:MediumLanguages:

Italian (Italiano) translation by Piergiorgio Sansone (you can also view the original English article)

Quando parliamo di sviluppo professionale con WordPress, è essenziale che gli sviluppatori comprendano sia i filtri che le azioni  è importante per capire i ganci (hooks) di WordPress.

In poche parole, i ganci sono ciò che ci consente di personalizzare, estendere e potenziare WordPress attraverso un'API nei nostri temi, plugin e altre iniziative di sviluppo personalizzato.

Il problema è che queste due caratteristiche di WordPress - probabilmente sono le più importanti per lo sviluppo della piattaforma - ma sono sia ampiamente fraintese o completamente ignorate.

In questo post, daremo un'occhiata al ciclo di vita della pagina di WordPress, capiremo come funzionano i ganci ed esamineremo le differenze tra filtri ed azioni, cosicchè si possa non solo diventare tra i migliori sviluppatori di temi e/o plugin, ma ottenere anche una profonda conoscenza di come funzioni WordPress.

Nota : Questo articolo si rivolge in modo particolare ai principianti, cosi se siete degli sviluppatori esperti, questo potrebbe essere un piccolo ripasso; mentre se siete dei principianti, sentitevi liberi di fare domande e lasciare commenti nella sezione dedicata ai commenti alla fine del post.


Il ciclo di vita di una pagina WordPress

Prima di incominciare a parlare sui ganci di WordPress, è importante capire com'è il ciclo di vita di una pagina di WordPress.

Un ciclo di vita della pagina non è nient'altro che una combinazione di eventi che si svolgono da quando un browser richiede una pagina a quando il server restituisce la pagina al browser.

Diciamo, per esempio, che si sta caricando una pagina singola. Poi, ad un livello più alto, WordPress farà qualcosa di simile a quanto segue:

  • Guarda l'ID della pagina richiesta
  • Interroga il database mediante il relativo ID della pagina
  • Interroga il database per qualsiasi dato ad esso associati (come le categorie, tags, immagini, etc.)
  • Interroga il database per i commenti ad esso associati
  • Restituisce tutti i dati richiesti al browser

I file Template e le chiamate alle funzioni API sono poi responsabili della visualizzazione, dello stile e del posizionamento dei dati sullo schermo.

Sembra semplice, ma se pensi di alcuni dei Blog più complessi che hai letto, o se pensi anche di alcuni dei lavori che hai fatto, si può cominciare a capire quanto intenso può essere questo particolare processo.

Naturalmente, questo è anche al massimo livello di semplicità . Questo non include nessun eventuale meccanismo di memorizzazione nella cache o nessuno degli argomenti avanzati che gli altri spesso discutono durante la creazione di progetti basati su WordPress.

Rarst - un famoso sviluppatore WordPress, - il ragazzo che sta dietro al sito querypost.com -  ha creato un grafico relativamente dettagliato che mostra il carico di base di WordPress:

WordPress Core Lifecycle

Non scoraggiatevi se non riuscite a seguire il diagramma di cui sopra. L'ho messo qui semplicemente come riferimento. L'obiettivo finale di questa sessione è che, alla fine, tutti gli sviluppatori sono in grado di capirlo.

Detto questo, è qui la chiave per capire circa i ganci durante il processo di caricamento di una pagina di WordPress :

Mentre WordPress esegue la serie di query e si prepara ad eseguire il rendering dei dati al browser, sta verificando tutti i ganci personalizzati - vale a dire, le azioni e filtri - che sono stati scritti ed il passaggio dei dati attraverso questi filtri prima di restituire i dati al browser.

A questo punto, è importante definire i ganci e guardare le differenze tra le azioni ed i filtri e che ruolo giocano all'interno del ciclo di vita.


Tutto sui ganci

I ganci di WordPress si riferiscono a due cose - azioni e filtri. Se si dovesse guardare gli articoli Codex su ganci, si vedrebbe nulla, ma una breve pagina di collegamenti ai riferimenti a filtri ed azioni. Che è esattamente come dovrebbe essere, perché è quello che sono i ganci.

Così qui,  è come dobbiamo immaginarli:

I ganci consentono di agganciarsi letteralmente nelle parti del ciclo di vita della pagina WordPress per recuperare, inserire o modificare i dati, o ci permettono di eseguire determinate azioni dietro le quinte.

Piuttosto fico, giusto?

Ma ci sono due cose da capire su questo:

  1. Le azioni sono differenti dai filtri
  2.  Non si può  gettare semplicementeun gancio in un punto arbitrario dell' esecuzione. Ci sono momenti durante i quali alcuni ganci sono a fuoco e tempi ottimali per poter approfittare di questo.

Detto questo, cerchiamo prima di definire azioni e filtri, quindi li esamineremo quando saranno a fuoco .


Adozione di misure

Quindi, Cosa sono le azioni? La definizione più semplice è questa: Le azioni indicano che qualcosa è accaduto. Tutto qui. Ma a cosa serve questa definizione? E come facciamo a non confonderci con gli eventi?

Ecco come non confonderci:

Le azioni sono eventi del ciclo di vita della pagina WordPress quando certe cose si verificano - alcune risorse vengono caricate, alcuni servizi sono disponibili, ed a seconda di quanto tempo prima si è verificata l'azione, alcune cose devono essere ancora caricarte.

Poiché abbiamo parlato del ciclo di vita della pagina di WordPress, le azioni sono fondamentalmente alcuni punti sulla pagina, durante il suo ciclo di vita, in cui è possibile introdurre le proprie funzionalità.

Questo significa che potete (far succedere qualcosa) creare un evento, durante il caricamento di una pagina.

Il Codex fornisce una grande risorsa sulle azioni che sono costruite in WordPress, nonché l'ordine in cui sono disponibili. Segnalibro, spesso si riferiscono a questo, imparalo.

È fondamentale, apprendere come collegare in alcuni punti WordPress durante la sua esecuzione, ed a "Farlo Bene"™.

Nel caso in questione: vedo spesso gli sviluppatori collegarsi (agganciarsi) all'azione init troppo frequentemente. Certo, c'è un momento per farlo. Ma dire che si voleva fare qualcosa appena prima di avviare  il post. Allora avrebbe avuto più senso utilizzare come aggancio il filtro pre_get_posts piuttosto che init, giusto?

Ecco perché è importante capire le azioni.


Filtrare ogni cosa

I Filtri, dall'altra parte, sono completamente differenti dalle azioni. Come azioni, essi sono punti simili che si verificano durante il ciclo di vita di pagina di WordPress; Tuttavia, quello che fanno è diverso.

Ecco come definire i filtri:

 I filtri sono funzioni con le quali WordPress passa i dati attraverso alcuni punti della pagina durante il suo ciclo di vita . Essi sono principalmente responsabili di intercettare, gestiore e restituire i dati prima di eseguire il rendering sul browser o il salvataggio dati dal browser al database.

Supponiamo per un momento che un visitatore del sito stia  per caricare un post. Da quello che abbiamo capito del ciclo di vita della pagina di WordPress; questi interroga il  database per il post corrente, ed il browser riceve i dati di ritorno. Prima di farlo, però, esegue i dati attraverso i filtri che sono stati definiti.

A questo punto, i filtri intraprenderanno delle azioni sui dati che vengono loro passati. Ad esempio, diciamo che vogliate aggiungere una breve frase circa l'autore alla fine del contenuto. Per effettuare questa operazione, avreste dovuto registrare una funzione personalizzata con il filtro the_content  e aggiungere la frase al contenuto.

Come fare questo esula dallo scopo di questo articolo, ma miriamo a coprire questo in un articolo futuro nella sessione.

Proprio come con le azioni, il Codex dispone di un elenco completo dei filtri disponibili. Allo stesso modo, segnalibro, spesso ci si riferiscono imparalo.

Una volta che hai una solida comprensione dei filtri, allora si può iniziare a manipolare il recupero dei dati e serializzare Doing It Right™ anziché eludere l'API di WordPress. Consente di manipolare i dati in modo potente e molto facile.

Ecco perché è importante capire i filtri.


Ma quando faccio...?

A questo punto, si pone sempre l'inevitabile domanda.

Quando si utilizza quale gancio?

Ed ecco il Consiglio che do normalmente:

  • Utilizzate le azioni quando volete aggiungere qualcosa alla pagina esistente come ad esempio fogli di stile, dipendenze JavaScript, o inviare una email quando si verifica un evento .
  • Utilizzate i filtri quando volete modificare i dati provenienti dal database prima di inviarli al browser, o provenienti dal browser prima di inserirli nel database.

Questo è tutto! Abbastanza semplice, spero.


Concludendo

A questo punto, consiglio vivamente di rivedere le seguenti argomenti :

Stiamo progettando di arricchire la sessione con diversi altri articoli per accompagnare questo così come avvenuto con l'articolo di Pipin su i plugin estensibili,  cosi da essere sicuri di rimanere sintonizzati su questa sessione per avere ulteriori informazioni sui ganci.

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.