ATTENZIONE! Il post che stai leggendo e' stato scritto oltre un anno fa: le informazioni contenute potrebbero non essere aggiornate e i commenti sono chiusi.

In questi giorni sto dando una mano a migliorare un blog fatto con WordPress.

Per realizzare la tag cloud ho usato la funzione wp_tag_cloud(); che WordPress offre “aggratis” (aka di default, senza dover installare nessun plugin): serve a visualizzare tutti i tag usati nel blog in forma di nuvola di tag (o tag cloud).

Qui trovate la descrizione della funzione, con la lista dettagliata degli argomenti accettati ed un esempio d’uso.

E’ una funzione molto semplice che se chiamata senza parametri:
[sourcecode language='php']< ?php wp_tag_cloud(''); ?>[/sourcecode]
mostra una tag cloud in cui la grandezza del font dei tag con meno occorrenze è 8 punti e quella del font dei tag con più occorrenze è 22 punti; la grandezza dei tag intermedi è calcolata in base a questi valori e a quanti tag ci sono in totale.

Questa grandezza può quindi essere un numero con la virgola.

Semplice no? Ovviamente no! I CSS (fogli stile) non mostrano la grandezza giusta di un font nel caso in cui il valore di questa è rappresentato appunto con un valore non intero, quindi la grandezza relativa di un tag non è (sempre) direttamente proporzionale al numero delle sue occorrenze.

Per correggere il malfunzionamento basta apportare una piccola modifica alla funzione obbligandola a effettuare un typecast da reale ad intero del valore che viene interpretato come grandezza del font.

A riga 417 del file “wp-includes/category-templates.php“, modificate la seguente istruzione:
[sourcecode language='php']
$a[] = “ $a[] = " < !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


Tag Cloud

Percentuali con decimali (es: ‘font-size: 146,666666667%;’):








Percentuali senza decimali (es: ‘font-size: 146%;’):










[/sourcecode]

PS: Per la gestione dei tag in un blog fatto con WordPress consiglio comunque di installare il noto plugin Simple Tags, usato incidentalmente anche sul blog che state leggendo, che permette una gestione molto flessibile ed approfondita dei tag; consente anche di realizzare e gestire una nuvola di tag attraverso una comoda interfaccia direttamente dal pannello di amministrazione del blog.

Plugin che tra l’altro soffre dello stesso problema.