Back to home page
Il Jester
My little dream is in developing

Creare un filtro per WordPress

WordPress, per le proprie necessità, e per tutte le implementazioni e customizzazioni, utilizza delle potenti API. Tra queste spiccano in particolar modo, i filtri. I filtri ci permettono di fare numerose personalizzazioni del nostro tema e dei nostri plugin. Possiamo usare i filtri ufficiali, implementati nel core di WordPress, oppure, possiamo crearne di nuovi, quando questi si rendono necessari. Chiaramente, quest’ultima opzione è solitamente utilizzata dagli sviluppatori di plugin, che in questo modo permettono ad altri sviluppatori o ai semplici utenti che usano il plugin di estenderlo o modificarne alcune impostazioni, in ragione delle personali esigenze.

In un mio precedente articolo, ho spiegato come utilizzare i filtri ufficiali. Qui spiego brevemente come crearne uno. La funzione “magica” è apply_filters(), la quale ci permette di filtrare i dati che intendiamo poi visualizzare a video o inserire nel database. Ecco un semplice esempio:

function foo() {
      $foo = 'foo';
      $foo = apply_filters( 'mio-dato', $foo );
      return $foo;
}

// per filtrare foo e aggiungere il valore bar all'output, 
// non ci resta che filtrarlo:

function bar( $foo ) {
      $foo .= ' bar';
      return $foo;
}
add_filter( 'mio-dato', 'bar' );

// il risultato sarà
(string) "foo bar"

Chiaramente, qualora i valori da passare siano più di uno, dovete poi indicare il numero di valori che passate, così come viene illustrato nella pagina di sviluppo WordPress che si occupa di questa funzione.

I filtri dunque sono un potente strumento che potete utilizzare soprattutto quando sviluppate plugin e temi che volete si prestino a diverse personalizzazioni. Il difetto di questo sistema, è che si presta a pericolosi infiltrazioni di codice malevolo qualora i dati passati con i filtri non vengano correttamente sanitizzati e puliti.

E' un post utile?00