Attenzione! Stai navigando il vecchio sito
Vai alla nuova homepage »
Impegni permettendo sto rinnovando il sito. Le informazioni che trovi in questo vecchio sito sono obsolete e mano a mano verranno rimpiazzate.

Wordpress - Come modificare la sezione "head"

Scritto da Marco Panichi il Aggiornato il
wordpress modificare wp_head()

Scrivendo codice php da oltre dieci anni e venendo da Drupal non nutro particolare simpatia per la filosofia WordPress secondo la quale le funzioni “si permettono” di stampare a schermo contenuti senza avere il minimo controllo.

Se anche tu la pensi così ed hai la necessità di controllare l’output della di wp_head(), questo breve articolo fa al caso tuo.

Modifica wp_head()

Ecco la funzione che dovrai copiare dentro al file functions.php del tuo tema. La semplice funzione non fa altro che assegnare l’output della funzione wp_head()  alla variabile $head  senza stampare a schermo alcunché.

function my_wp_head()
{
   // assegna l’output di wp_head() a $html
   ob_start();
   wp_head();
   $html = ob_get_clean();

   // elabora $html
   // MODIFICA QUI IL CONTENUTO DELLA VARIABILE $html

   // ritorna $html
   return $html;
}

Utilizzo della nuova funzione in header.php

Ora che hai apportato le tue modifiche grazie alla funzione my_wp_head()  devi sostituire la chiamata a wp_code()  con una chiamata alla neonata funzione.

L’unica riga di codice che dovrai sostituire si trova nel file header.php, per cui apri questo file e cerca la stringa wp_head()  e sostituiscila con my_wp_head()  . Il tuo nuovo header.php dovrebbe assomigliare a qualcosa del genere:

<head>

   <!-- sezione head del tuo tema -->
   
   <?php echo my_wp_head(); ?>

</head>

Usare con cautela

Per esperienza posso dirti che ogni volta che tenti di modificare il comportamento naturale di un software, ti ritrovi sempre in qualche vicolo cieco. Il bello poi è che questo accade solitamente qualche anno dopo aver effettuato la modifica, rendendo tutto molto più “divertente” (si, il mio tono è ironico!).

Per questo motivo il mio consiglio è, quantomeno, di aggiungere un commento nel file header.php che ti segnali la presenza della nuova funzione e il suo scopo. Ad esempio:

// MODIFICHE APPORTATE A WP_HEAD
my_wp_head();

Tua opinione a riguardo?

Hai trovato l’articolo di tuo interesse? Conoscevi questa soluzione oppure ne applicavi un’altra? Vuoi mettere in guardia me o i lettori riguardo l’uso di questa pratica?

Inserisci un commento qui sotto, sei il benvenuto!

Commenti

Informativa
Noi e terze parti usiamo strumenti di tracciamento (cookie e tecnologie affini) per finalità tecniche e, con il tuo consenso, anche per altre finalità specificate nella Cookie Policy. In qualsiasi momento puoi liberamente prestare, revocare o rifiutare tale consenso. Per ulteriori informazioni vedi: Privacy Policy - Cookie Policy
X
Personalizza il tuo consenso
Da qui puoi esprimere le tue preferenze rispetto i cookie e le tecnologie che usiamo per le varie finalità. Ricordati che in qualsiasi momento puoi liberamente modificare queste preferenze. Per ulteriori informazioni vedi: Privacy Policy - Cookie Policy
Strumenti di tracciamento di terze parti INFO
Cookie o strumenti di tracciamento gestiti da terze parti. Essi sono strettamente necessari per garantire il funzionamento e la fornitura del servizio richiesto dall'utente e quindi non richiedono il suo consenso.
Miglioramento dell'Esperienza INFO
Cookie utili per fornire un'esperienza utente migliore e personalizzata, tramite la gestione delle impostazioni personali e l'interazione con piattaforme di terzi e network.
Misurazione INFO
Strumenti per misurare il traffico e analizzare il comportamento degli utenti con l'obiettivo di migliorare il servizio.
Targeting e Pubblicità INFO
Strumenti per fornire contenuti commerciali personalizzati in base al comportamento dell'utente e per gestire, diffondere e tracciare annunci pubblicitari.
X