Signaler les articles récents (logo "NOUVEAU")

Salut,

Voici un moyen de signaler d'une manière spécifique les articles récents.

Problème:
Lorsque l'on navigue dans un site de rubrique en rubrique, il est agréable de se voir signaler d'une manière spécifique (par exemple, un chouette petit logo "Nouveauté") les articles publiés récemment. Dans SPIP, on utilise généralement la page du sommaire pour le faire, mais une fois dans les rubriques du site, il n'y a plus de signalisation spécifique. Surtout, si on adopte une présentation des articles "par titre", impossible de signaler là-dedans qu'un de ces articles a été mis en ligne depuis moins d'un mois (ou une semaine, au choix...).

Il existe une méthode très simple pour provoquer, à côté du titre d'un article, le fait qu'il a été publié depuis moins d'une semaine.

Voici le principe, à utiliser par exemple dans une page de RUBRIQUE:

<BOUCLE_articles(ARTICLES){id_rubrique}{par titre}>
<li>#TITRE

      <BOUCLE_nouveau(ARTICLES){id_article}{age < 30}>nouveau!!!</BOUCLE_nouveau>

</BOUCLE_articles>

La première boucle (BOUCLE_articles) est connue: dans une page de rubrique, elle affiche tous les articles contenus dans cette rubrique, classés ici selon leur titre.

A l'intérieur de cette rubrique, on affiche le #TITRE de l'article (compléter de manière habituelle avec le surtitre, le soustitre, les auteurs de l'article, éventuellement l'introduction du texte et le logo).

Toujours dans cette boucle (donc effectuée pour chaque article sucessivement), à la suite du #TITRE, il y a cette boucle très simple: BOUCLE_nouveau:
on sélectionne "les" articles dont l'id_article est le #ID_ARTICLE en cours; c'est-à-dire qu'on fait une boucle qui sélectionne l'article dans lequel on se trouve déjà. Ca semble idiot à priori: si on affichait un #TITRE à l'intérieur de cette boucle, on obtiendrait exactement le titre qu'on a déjà affiché!

Le "truc", ici, consiste à ajouter un critère {age < 30}: du coup, on sélectionne l'article courant SI il a été publié depuis moins de 30 jours. Dans la boucle, on affiche donc "nouveau" (ou un zoli logo pour l'occasion) uniquement si l'article est récent. Le tour est joué.

Si vous avez bien compris, le principe est de faire une boucle qui resélectionne l'élément qu'on est justement en train d'afficher, mais en y ajoutant un critère de date ({age < 7} si on veut afficher les articles de moins d'une semaine). Vous pouvez ainsi utiliser cette même méthode pour l'affichage des messages des forums: à chaque fois que vous affichez un message du forum, vous pouvez faire une boucle du type:
<BOUCLE_nouveau_forum(FORUMS){id_forum}{age < 7}>nouveau</BOUCLE_nouveau_forum>
qui va signaler que c'est un message récent.

Amicalement,
ARNO*

--
Le Scarabée : http://www.scarabee.com
uZine 2 : http://www.uzine.net

DH/DSS, 0x11930F0B, DEEB 602D B344 644B AF88 BF73 85F4 2297 1193 0F0B

Euhh effectivement très simple ARNO* ...

Tu veux pas la mettre en standard dans la prochaine version ? Arf !!!

(dur dur d'être un pro dans un monde de pas que pro)

A part çà, je propose de remplacer
ADMIN par REDACTION
Administrateur par Editeur ou EditeurSite
Administrateur partiel : EditeurRubrique

(deux Macs qui parlent sans bulles (Thomas et ARNO*), quel Wondefull
Wild World !)

Walk
Sur les boucles je la boucle (o;

----- Message d'origine -----
De : "ARNO*" <arno@scarabee.com>
À : <spip@rezo.net>
Envoyé : vendredi 30 novembre 2001 19:47
Objet : [Spip] Signaler les articles récents (logo "NOUVEAU")

Il existe une méthode très simple pour provoquer, à côté du titre
d'un article, le fait qu'il a été publié depuis moins d'une semaine.

salut

ARNO* a écrit :

Salut,

Voici un moyen de signaler d'une manière spécifique les articles récents.

...

Amicalement,
ARNO*

Tout simplement MERCI ?

A+ Yann