I custom fields in WordPress, come utilizzarli nel template

I campi Custom sono delle informazioni aggiuntive relative a pagine o post.

Per aggiungerli è semplice, perché basta andare nell’editing di una qualsiasi pagina o post, e attivare la visualizzazione in alto a destra da “Screen Options”.

attiva-custom-fields

Tanto per renderci conto di cosa si tratta, non sono altro che delle righe di records, contrassegnate da un cosiddetta key, o chiave, dalla quale è possibile risalire al cosiddetto valore.

Vediamo la struttura della tabella in Mysql:

mysql-custom-fields

Possiamo aggiungere qualsiasi custom field ai nostri post, poiché essi verranno salvati nella tabella wp_postmeta, che contiene il riferimento al post_id, la meta_key, ossia chiave, ed il meta_value ossia il valore del nostro campo.

WordPress offre una funzione molto utile per elencare tutti i campi disponibili per un dato post.

Tale funzione si chiama the_meta(), che non fa altro che mostrare tutti i campi disponibili con relativo valore e chiave.

Quando abbiamo moltissimi campi e siti complessi questa funzione diventa davvero utile.

esempiohtmlcampi

La funzione sopra mi elenca tutti i campi per un dato post.

Così come lavora WordPress per reperire le informazioni, the_meta, farà riferimento alla variabile $post, del post corrente nel ciclo della WP_Query.

Vediamo l’esempio

Nel codice sopra abbiamo creato una WP_Query che agisce custom_post di tipo video, ed andiamo ad estrarre solo quelli che hanno la tassonomia categories corrispondente allo slug pop-genre.

Si cicla con il classico have_posts, avanzando il loop con the_post(), e così automaticamente possiamo ottenere i valori di ogni singolo post.

Per ottenere invece un meta preciso con chiave che conosciamo  a priori usiamo get_post_meta, a cui passiamo l’ID del post, il nome della chiave, e true per dire che vogliamo ottenere un valore e non un array.

L’utilizzo dei custom fields è vitale per arricchire le funzionalità di WordPress.