php nei widget di WordPress

In Wordpress by Roberto0 Comments

Sono certo che se avete un blog basato su WordPress, come me sarete sempre alla ricerca di funzionalità aggiuntive che possano integrarsi perfettamente al vostro blog, aggiungendo qualcosa, ma senza appesantirlo; oggi vi spiegherò come eseguire codice php nei widget di WordPress.

Come promesso in altri articoli, ho deciso di indicarvi qualche dritta se siete agli inizi con WordPress oppure, più semplicemente, se non conoscete quello che voglio descrivervi: eseguire codice php nei widget di WordPress.

Ci sono tantissimi plugin in grado di sopperire a questa esigenza, ma se avete letto il mio post su come velocizzare wordpress saprete che meno plugin utilizzate, meglio è per il vostro blog. Tutto quello che questi plugins fanno, può essere eseguito modificando il file functions.php del vostro template e aggiungendo poche righe di codice.

Passiamo alle modifiche vere e proprie:
collegatevi in FTP sul vostro dominio e cercate il file functions.php che, solitamente, si trova in questa posizione:

public_html/wp-content/themes/NOMETEMPLATE/functions.php

aprite il file php con un editor e aggiungete queste righe di codice:


add_filter('widget_text','execute_php',100);
function execute_php($html){
if(strpos($html,"<"."?php")!==false){
ob_start();
eval("?".">".$html);
$html=ob_get_contents();
ob_end_clean();
}
return $html;
}

Queste poche righe di codice faranno si che il vostro blog WordPress possa ora eseguire del codice PHP all’interno dei vostri widget e questo vi darà la possibilità di aggiungere funzionalità senza appesantire il vostro blog.

Per spiegarvi l’utilità di questo “trucco”, eccovi l’immagine di 3 miei widget presi direttamente dalle pagine di robertobonfa.it:

php nei widget

Come potete vedere, con le poche righe di codice aggiunte al file , sul mio sito posso ricavare l’orario attuale, il vostro indirizzo IP e il numero di queries che il mio DB esegue ogni volta che viene caricata una pagina.

Se voleste anche aggiungere l’ulteriore possibilità di eseguire codice php nelle pagine e post, allora utilizzare queste righe al posto di quelle precedenti:

 
add_filter('the_content','execute_php',100);
add_filter('widget_text','execute_php',100);
function execute_php($html){
 if(strpos($html,"".$html);
 $html=ob_get_contents();
 ob_end_clean();
 }
 return $html;
}

Ecco fatto: una piccolissima modifica al “cuore” della vostra installazione WordPress e avete ricavato una funzionalità per cui esistono decine di plugins.

Buon divertimento!

CONDIVIDI QUESTO ARTICOLO


Comment Policy:

I commenti che vengono espressi su questo sito, rispecchiano il pensiero di coloro i quali li esprimono. Siate, pertanto, educati e cortesi nei confronti di chiunque. Utilizzate solo il vostro vero nome e i vostri profili social per collegarvi. Utilizzare profili falsi porterà alla cancellazione del commento, al blocco dello username, al ban dell'IP dal sito e ad una eventuale segnalazione dell'IP stesso alle autorità competenti. Sul sito non sono permessi commenti anonimi, pertanto è necessario che vi autentichiate con uno dei servizi che potete trovare qui sotto. Sono ammessi l'utilizzo di immagini e link nei commenti, ma con moderazione e sempre nel rispetto altrui.