Ultimamente mi sto appassionando alla realizzazione di temi per WordPress, quello che vedete qui nel blog, AllYear-Theme, l’ho disegnato io e ne vado moderatamente fiero, nel senso che è ancora in beta e con alcuni browser possono esserci problemi, soprattutto con IE6, tuttavia nella realizzazione di alcune pagine ho incontrato una problematica che può capitare spesso: l’utilizzo di Loop multipli all’interno dei nostri template di pagine, o semplicemente anche nel file index.php.
Ciò che sta alla base dei loop multipli è la necessità da parte dell’autore di mostrare più informazioni possibili sulla pagina, ecco alcuni casi d’uso in Home Page:
- Usare il Loop principale per mostrare gli ultimi post (i primi 10 ad esempio) ed uno secondario per mostrare i successivi 5 corredati da un breve testo descrittivo
- Raggruppare i post in categorie definite, in modo da guidare il visitatore nella scelta di ciò che andrà a leggere
- Mostrare i post contententi esclusivamente un particolare Tag
Gli utilizzi perciò sono molteplici, vediamo perciò come fare.
Caso 1 – mostrare i primi X post e i successivi 5:
< ?php
/*
* il numero di post da mostrare potete agevolmente cambiarlo
* anche dalle impostazione del vostro WordPress
*/
query_posts("showposts=10"); ?>
< ?php if (have_posts()) : while (have_posts()) : the_post(); ?>
//codice relativo ai post principali
< ?php endwhile; endif; ?>
< ?php $id=($paged+1)*5;
query_posts("showposts=5&offset=${id}");
while (have_posts()) : the_post(); ?>
//codice del secondo loop
< ?php endwhile; ?>
Caso 2 – raggruppare i post in categorie definite
Questo ed il terzo caso si rifanno al primo, combinando opportunamente i due cicli:
< ?php $category_name="Nome Categoria";
/*
*il numero della categoria: andando a modificare una categoria del vostro blog
* vi appare un indirizzo del tipo: http://www.vostrosito.it/wp-admin/categories.php?action=edit&cat_ID=75
*/
$category_ID = 75;
<?php query_posts("category_name=$(category_name)"); ?>
//oppure
< ?php query_posts("cat=$(category_ID)"); ?>
< ?php while (have_posts()) : the_post(); ?>
//qui mostrate i vostri post
< ?php endwhile; ?>
Caso 3 – mostrare i post contenenti un particolare Tag
< ?php $tags="nometag"; //ricerca tag singolo
$tags = "nometag1, nometag2"; //ricerca O del primo, OPPURE del secondo
$tags = "nometag1+nometag2"; //ricerca di articolo che contengono il primo E il secondo
<?php query_posts("tag=${tags}"); ?>
< ?php while (have_posts()) : the_post(); ?>
//qui mostrate i vostri post
< ?php endwhile; ?>
In questo articolo abbiamo visto alcuni esempi. E’ chiaro che le possibilità sono molteplici e per questo vi rimando all’articolo ufficiale su WordPress.org. Buon lavoro! ![]()
di Denis, postato alle 09:10









Molto bello…complimenti. Peccato che alla fine rimandi al sito tutto in inglese, ed io non conosco la lingua. Cmq, posso chiederti come devo fare, per visualizzare l’intera categoria e non solo l’eleno a diiture iniziali? Boh, on ci apisco più nulla!!! Ciao ciao