4 Semplici Step per Creare un Archivio Più Efficace

Non di soli nuovi articoli vive il blogger...

archivio-efficace

Credo che ciò che renda efficace un archivio sia la capacità di quest’ultimo di trasmettere informazioni al visitatore senza richiedere decine di click per indagarne ogni singola sottosezione.

Tutto dev’essere in bella vista, chiaro e autoesplicativo.

Spesso invece gli archivi finiscono per essere nude liste di categorie, pagine o tag. Talvolta ci si imbatte in qualche paragrafo introduttivo, qualche selezione di “best post” tesa a stimolare qualche click in più. Ma si sa, il tempo è sempre poco e anche il blogger più motivato prima o poi getta la spugna e trascura questa parte del proprio blog.

Per questo oggi ti voglio presentare una soluzione che:

  • Mostra tutte le tue categorie insieme alla loro descrizione
  • Presenta gli ultimi n-post recenti per ciascuna categoria
  • Non richiede alcuna manutenzione
  • Non richiede alcun plugin!

E si sviluppa in poco meno di un’ora se hai già dimestichezza con i file del tuo tema. In quattro semplici passi. :)

1. Completa le descrizioni di categoria

Per prima cosa dovrai inserire una descrizione coerente per ciascuna delle categorie presenti sul tuo blog. È un lavoraccio, lo so. :D

Anche se il codice che ti vado a presentare oggi potrebbe funzionare (con qualche ritocco) senza di esse, le descrizioni di categoria sono ciò che dona la classica marcia in più al tuo archivio e tornano oltremodo utili quando si tratta di mettere mano alla SEO.

Prenditi quindi una mezz’oretta piena e recati nella sezione “Articoli”, poi sotto “Categorie” e per ciascuna di esse inserisci un paragrafo di buon testo descrittivo.

Nota: Molti plugin come HeadSpace2 ti permettono inoltre di riportare queste descrizioni all’interno dei diversi meta-tag description per ciascuna pagina di archivio categoria in maniera totalmente automatica e trasparente, migliorando leggibilità e scansione delle tue pagine nelle SERP dei motori di ricerca.

Se stai utilizzando il sopracitato plugin, per beneficiare di tale opzione è sufficiente (tra le opzioni di HeadSpace) attivare il modulo di pagina “Descrizione pagina” e inserire sotto il segmento “Categorie” in “Descrizione” la variabile “%%category_description%%“. È più semplice farlo che scriverlo, sul serio! ;)

2. Crea un template di pagina per il tuo archivio

Il modo migliore di presentare il tuo archivio è quello di utilizzare un template di pagina personalizzato. La buona notizia è che probabilmente il tuo tema già dispone di un file dedicato e tu sei già a metà dell’opera. :)

In caso contrario, la soluzione più rapida è partire dal file “archive.php”, duplicarlo, rinominarlo per ottenere “archivio.php” e lavorare su di esso. Devi sapere che i template di pagina sono uguali in tutto e per tutto agli altri file PHP del tuo tema, salvo l’essere definiti da un piccolo snippet di codice iniziale che ne definisce il nome per l’utilizzo interno.

Definisci quindi il nome del tuo template inserendo questo codice prima di qualunque altra riga in “archivio.php”.

<?php
/*
Template Name: Archivio
*/
?>

Rimuovi tutto ciò che trovi all’interno del LOOP e modifica questo layout quanto necessario: vorrai forse inserire qualche paragrafo introduttivo, un’immagine o l’archivio mensile dei post pubblicati.

Quando sarai soddisfatto, non dovrai fare altro che recarti nella dashboard del tuo blog, creare una nuova pagina (”Archivio Articoli” ad esempio) e assegnarle nella sidebar destra il template di pagina che hai poc’anzi creato.

3. Copia e incolla questo codice all’interno del LOOP

Ora arriva la parte divertente. :)

Questo codice ti permette di presentare tutte le categorie presenti sul tuo blog insieme ad una loro descrizione e gli ultimi tre articoli pubblicati per ciascuna di esse.

È una soluzione come dicevo totalmente automatica che ti permette, una volta configurato tutto a puntino, di dimenticarti di essa in maniera totale. Copia e incolla questo codice all’interno del LOOP nel punto in cui vuoi venga generato l’output.

<div class="archivio_categorie">

<?php
$trova_Cat = $wpdb->get_results("SELECT * FROM $wpdb->terms AS wterms INNER JOIN $wpdb->term_taxonomy AS wtaxonomy ON ( wterms.term_id = wtaxonomy.term_id ) WHERE wtaxonomy.taxonomy = 'category' AND wtaxonomy.parent = 0 AND wtaxonomy.count > 0");

$contatore = 0;

foreach ($trova_Cat as $category) {

	$contatore++;

	$stile_categoria = '';
	if (is_int($contatore / 2)) $stile_categoria = ' class="categoria_alternativa"';

	$link_categoria = get_category_link($category->term_id);

	echo '<div'.$stile_categoria.'>
		<h3><a href="'.$link_categoria.'" title="'.$category->name.'">'.$category->name.'</a></h3>';

		echo category_description($category->term_id);

		echo '<ul>';

		query_posts('cat='.$category->term_id.'&showposts=3');?>

		<?php while (have_posts()) : the_post(); ?>
			<li><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></li>
		<?php endwhile; ?>

		</ul>
	</div>

<?php }	?>
</div>

4. Applica uno stile tramite CSS

Per concludere, nel file style.css del tuo tema non dovrai fare altro che applicare un paio di basilari regole CSS per definire la presentazione grafica. Con molta probabilità dovrai ritoccare la larghezza (width) riportata qui sotto per adattarla a quella del tuo contenitore principale. Puoi anche rimuoverla del tutto, insieme al parametro “float:left” per allineare gli elementi uno sotto l’altro.

.archivio_categorie div {
	width: 284px;
	float: left;
	margin-right: 15px;
	margin-bottom: 15px;
}

.categoria_alternativa {
	margin-right: 0 !important;
}

E…voilà! Puoi osservare il risultato in azione sulla pagina archivio di questo stesso blog! :D

scritto da Francesco Gavello il 15 gennaio 2010 | 10 commenti
in: WordPress

Continua a leggere

Share The Love!

Aiuta FrancescoGavello.it a crescere e ad avere sempre più articoli di qualità!

10 Commenti

Lo sapevi che tutti i link sono NoFollow free ?

  1. Francesco Ciabatta ha detto:

    Davvero, davvero interessante questa tecnica! Grazie Francesco!

    Una domanda sul plugin che hai segnalato (HeadSpace2): mi pare di aver capito che permette di inserire automaticamente anche i custom fields, è esatto?

    Rispondi
  2. gianluca ha detto:

    bel modo per implementare l’archivio, anche se sono solo all’inizio con il mio blog, mi stavo proprio chiedendo se fare una pagina del genere e credo che appena avrò un po di tempo questa sarà la soluzione giusta…magari prima aspetto di avere abbastanza contenuti per farla un po consistente.

    Andando a vedere il tuo archivio tra l’altro ho anche scoperto la categoria Top 25, molto interessante, questo si che assolve a quello che dicevi ad inizio articolo di attirare l’attenzione e stimolare qualche click in più…

    o almeno i miei click li ha sicuramente stimolati :-)

    Rispondi
  3. maldestro ha detto:

    eccezionale, semplice e geniale. è quello che stavo cercando per il mio blog bookstrore una spece di store appunto di ebook, video e software.
    adesso è tardi, ma domani mi ci metto subito.

    grazie

    Maldestro

    Rispondi
  4. maldestro ha detto:

    ah…dimenticavo…
    bella storia i link nofollowfree, “rubberò” anche questo suggerimento

    grazie

    Maldestro

    Rispondi
  5. Marco ha detto:

    Pienamente implementato nel mio sito :D
    Solo una cosa: mi sono accorto quasi per caso che questo sistema non visualizza le categorie che hanno delle sottocategorie. Non le fa proprio vedere…ora mi sto studiando il codice per cercare di capirci qualcosa.
    Hai idea su come si possa rimediare?

    Rispondi
  6. Francesco Gavello ha detto:

    Rimuovi ” AND wtaxonomy.parent = 0″ dalla query iniziale.

    Avrai bisogno di ritoccare anche il CSS se vorrai distinguere visivamente le sottocategorie rispetto alle altre ;)

    Rispondi
    • Marco ha detto:

      Praticamente ho una macrocategoria “accoglienza” e delle sottocategorie divise per anno: 2008-2009-2010…
      Gli articoli erano assegnati solo alle categorie figlie, per questo motivo non venivano visualizzati. Per adesso ho risolto assegnando gli articoli anche alla categoria madre; in questo modo vengono visualizzati. Comunque in questi giorni provo anche a lavorare sul codice come dici tu, e vedrò cosa viene fuori :D

      Grazie ;) !!!

      Rispondi
  7. Scrid ha detto:

    Ciao Francesco, premetto che ne capisco davvero ‘0′ di Php. Ma ho provato a seguire le tue istruzioni, copiando è incollando il codice nel mio template di pagina e rinominando il file, però il mio archivio mostra tutti gli articoli, invece, di 3 soltanto e non riesco a capire perchè.

    Guarda: http://www.storiacontinua.com/notizie/

    Mi potreste aiutare a migliorarlo? Magari c’è qualcuno che una il mio stesso tema, CarringtonBlog.

    Grazie

    Rispondi
    • Francesco Gavello ha detto:

      Ciao Scrid,
      non conosco il tema CarringtonBlog ma quello che dovresti cercare di ottenere è un file “archivio.php”, con all’interno il codice necessario a renderlo un template di pagina. E poi assegnare questo template a una pagina creata ex-novo per il tuo nuovo archivio.

      Forse il tuo tema sfrutta “archive.php” (file predefinito da WP) per generare la lista di post e tu ti stai riferendo a quest’ultimo?

      Assicurati che il nome del template di pagina in archivio.php sia corretto e che questo template sia correttamente assegnato alla pagina che hai scelto per contenere il nuovo archivio.

      Rispondi

Lascia un commento

Anteprima commentatore

Personalizza il tuo avatar!
Vai su gravatar.com e carica quello che preferisci!

I commenti sono modificabili entro 5 minuti dal loro inserimento.
Puoi usare questi tag: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>