La leçon précédente nous a appris à afficher des éléments en fonction du contexte. Nous allons ici voir comment ce contexte varie au fur et à mesure des BOUCLES rencontrées.
Modifions notre squelette « tutoriel.html » de la manière suivante :
<BOUCLE_article(ARTICLES)>
#TITRE<BR>
</BOUCLE_article>
Là, on supprime carrément la condition {id_article=1}. Attention : cette BOUCLE va générer une page énorme si votre base contient déjà pas mal d’articles : mieux vaut prendre nos précautions et ajouter tout de suite {0,10} pour limiter aux 10 premiers articles...
<BOUCLE_article(ARTICLES){0,10}>
Résultat : les titres des 10 premiers articles de votre base s’affichent, séparés par un saut de ligne. A partir de là, on voit comment on peut produire le sommaire d’une rubrique : affichons les 10 articles les plus récents appartenant à cette rubrique.
<BOUCLE_article(ARTICLES){id_rubrique}{par date}{inverse}{0,10}>
<a href=#URL_ARTICLE>#TITRE</A><BR>
</BOUCLE_article>
Prenons dans l’ordre :
{id_rubrique} : ne prend que les articles appartenant à la rubrique id_rubrique (cf. ci-dessous pour que cette variable soit définie dans le contexte de notre BOUCLE_article).
{par date}{inverse} : tri par date dans l’ordre décroissant...
{0,10} : ... et prend les 10 premiers résultats.
Enfin, <a href=#URL_ARTICLE>#TITRE</A> va écrire non seulement le titre de l’article mais en plus créer un lien vers cet article.
Reste à invoquer le squelette, en lui passant le contexte id_rubrique=1 :
http://votresite.net/tutoriel.php3?id_rubrique=1.
La magie de SPIP tient dans la combinaison de ce type de fonctionnalités. Si vous êtes arrivé jusqu’ici, c’est gagné !