Aggiungere una pagina Tag Cloud a wordpress
11 settembre 2008Mi piaceva molto l’idea di Davidonzo di avere una pagina contentente l’intera nuvola di tag. In Wordpress quest’opzione è piuttosto nascosta. Non sono esperto di Wordpress, non ne conosco per nulla la struttura e la pagina del codex riservata ai tag è incompleta, mentre gli articoli trovati in rete sembrano una scopiazzatura mal adattata del codex stesso.
Eppure è molto semplice, bastano due semplici operazioni. Prima si crea un nuovo template. Un template è una serie di istruzioni che dicono a Wordpress come visualizzare una pagina. Per creare un template il mio consiglio (be’, lo consiglia tutto il web…) è quello di prendere una pagina dalla cartella del proprio tema (ad esempio la pagina single.php che visualizza un singolo post del blog, oppure page.php che visualizza una singola pagina) e modificarla. Nel mio caso il tema non offre nessun template, pertanto ho aperto index.php: la pagina tuttofare del tema. Da questa ho eliminato tutto il codice centrale della pagina lasciando solo le funzioni essenziali per far apparire la pagina con la tag cloud come una normalissima pagina del blog.
Il risultato è questo:
<?php /*
Template Name: Tag Archive
*/ ?>
<?php get_header(); ?>
<div id="wrapper">
<div id="content">
<?php wp_tag_cloud('smallest=8&largest=20&number=0'); ?>
</div>
</div>
<?php get_sidebar(); ?>
<?php get_footer(); ?>
Il primo commento è obbligatorio perché da un nome al template. Le funzioni “get_” assieme ai due tag “div” servono a impostare l’aspetto e le funzionalità della pagina standard di Wordpress (almeno nel mio tema basta questo).
La funzione “wp_tag_cloud” si preoccupa di scrivere la nuvola dei tag. Secondo la documentazione di Wordpress i parametri che accetta sono:
- smallest: la dimensione con cui apparirà il tag meno usato.
- largest: la dimensione con cui apparirà l tag più usato.
- unit: l’unità di misura con cui intepretare le dimensioni smallest e largest. Sono le stesse unità di misura accettate dallo standard CSS: pt (che è quella usata di default), px, em, ex, mm, %, e così via.
- number: il numero massimo di tag da mostrare. Impostare a 0 per non dare alcun limite.
- format: se impostato a “flat” separa ogni tag con uno spazio; “list” crea un elenco puntato; “array” non fa stampare il tag cloud ma restituisce un array da manipolare in PHP.
- orderby: può valere “name” (ordina i tag per nome) o “count” (ordina i tag per frequenza di utilizzo).
- order: imposta la modalità di ordinamento, “ASC” ordina in modo crescente (comportamento di default); “DESC” decrescente; “RAND” casuale.
- exclude: esclude dal cloud i tag con gli ID specificati (es: exclude=1,5,25).
- include: permette di specificare una lista di ID dei tag da visualizzare, gli altri tag saranno automaticamente esclusi.
Ovviamente è possibile fornire la stessa dimensione ai parametri smallest e largest se non si vuole che i tag abbiano dimensione proporzionale al loro utilizzo!
Tornando a noi, il template appena creato deve essere memorizzato nella directory del tema in uso; all’interno della directory di wordpress in “/wp-content/themes/(directory del tema)”. Il file deve avere estensione “php” e bisogna evitare di usare i nomi riservati di Wordpress quali: single, page, tag, … per andare sicuri basta chiamare la pagina tagcloud.php.
Finita la parte tecnica, è possibile andare nella sezione di amministrazione di Wordpress e scegliere Scrivi e poi Pagina. Dare un titolo alla pagina e lasciarne vuoto il contenuto. In basso, tra le opzioni della pagina, è possibile scegliere il template da assegnarle. Scegliere il template appena creato (se non avete cambiato il codice si chiamerà Tag Archive) e il gioco è fatto.
La pagina dovebbe essere raggiungibile tramite link (dipende dal tema utilizzato) e funzionare perfettamente.
Veramente utile!!!
Grazie!!
….e infatti non ti funge….
Cos’è che non va? http://www.vicidomini.net/blog/tag-cloud/