Wordpress: la funzione wp_head()

Wordpress: la funzione wp_head()

Recentemente ho sviluppato un tema in Wordpress ed ho cominciato ad analizzare più in dettaglio le funzioni standard che vengono usate in ciascun tema. La prima, e più semplice, è sicuramente wp_head(), che può essere usata sia nella creazione di plugin sia nel normale sviluppo di un tema. Entrambi gli aspetti richiedono che tale funzione venga inserita nel file header.php all'interno dell'elemento head (solitamente alla fine). Ma cosa fa questa funzione?

wp_head() non accetta parametri. Nell'installazione predefinita di Wordpress, questa funzione viene utilizzata dal CMS per visualizzare in modo predefinito la barra di amministrazione appena sopra il contenuto del sito. Se si rimuove tale funzione da un tema, la barra di amministrazione non è accessibile nel sito.

Un tema può aggiungere un hook usando questa funzione come primo parametro della funzione add_action():


<?php
add_action('wp_head', 'nome_funzione');
?>

Anche un plugin (soprattutto un plugin) può usare tale codice per aggiungere degli snippet nella sezione head delle pagine. Per esempio, plugin che gestiscono web fonts possono usare tale sintassi per aggiungere elementi link o script in tale sezione.

La documentazione ufficiale di Wordpress specifica che:

Questa funzione non fornisce parametri. Potete usare una vostra funzione che dia un output al browser o che svolga compiti in background. La vostra funzione non dovrebbe nè avere parametri nè restituirli.

Se specifichiamo una nostra funzione, dovremmo sempre fare in modo che questa funzione restituisca un output ben formato. Infatti se si genera HTML malformato nella sezione head di una pagina, il browser potrebbe visualizzare l'output all'inizio della pagina come semplice marcatura in formato testo o addirittura non visualizzare il resto della pagina.

Se l'output è piuttosto lungo e ridondante, si può utilizzare la funzione PHP include() nella nostra funzione in modo da separare anche logicamente l'azione dal contenuto della stessa.

Torna su