[spip-dev] Problème {id_mot!=44}

Bonjour,

Suite à mes posts sur la liste users
http://listes.rezo.net/archives/spip/2002-09/msg01519.html et un peu de
recherche sur les archives de la liste j'ai compris le pbm avec le critère
id_mot!= et la solution de faire une boucle d'"élimination" avant la boucle
d'affichage marche bien... sauf que... cela suppose que dans la boucle
d'affichage on intègre le critère {doublons} et le pbm est que ce critère
perturbe les affichages en plusieurs colonnes du type {1/2} {2/2}... Alors
comment faire ??

Exemple qui marche (je ne veux pas afficher les articles ayant le mot-clé
44) :

<BOUCLE_elimination_articles(ARTICLES){id_mot=44}{doublons}></BOUCLE_elimina
tion_articles>
<BOUCLE_articles(ARTICLES){doublons}{titre_mot==^(Campagnes|SN)$}{id_mot==^(
1|5|6|38|39)$}{par date}{inverse}{0,10}>
<A HREF="#URL_ARTICLE">#TITRE</A>

/BOUCLE_articles>

Mais comment faire quand mon affichage est (le crtière doublons pertuberait
les affichages) :

<BOUCLE_articles1(ARTICLES)titre_mot==^(Campagnes|SN)$}{id_mot==^(1|5|6|38|3
9)$}{par date}{inverse}{0,10}{1/2}>
<A HREF="#URL_ARTICLE">#TITRE</A>

/BOUCLE_articles1>

<BOUCLE_articles2(ARTICLES){titre_mot==^(Campagnes|SN)$}{id_mot==^(1|5|6|38|
39)$}{par date}{inverse}{0,10}{2/2}>
<A HREF="#URL_ARTICLE">#TITRE</A>

/BOUCLE_articles2>

Merci pour l'aide, cordialement

@ Patrice <webmaster@ecoparis.org> :

Mais comment faire quand mon affichage est (le crtière doublons pertuberait
les affichages) :

<BOUCLE_articles1(ARTICLES)titre_mot==^(Campagnes|SN)$}{id_mot==^(1|5|6|38|3
9)$}{par date}{inverse}{0,10}{1/2}>
<A HREF="#URL_ARTICLE">#TITRE</A>
>/BOUCLE_articles1>

<BOUCLE_articles2(ARTICLES){titre_mot==^(Campagnes|SN)$}{id_mot==^(1|5|6|38|
39)$}{par date}{inverse}{0,10}{2/2}>
<A HREF="#URL_ARTICLE">#TITRE</A>
>/BOUCLE_articles2>

En fait ton problème n'est plus celui des mots-clés, mais celui des doublons
et des {1/2} {2/2} : il faut réfléchir un peu... si tu veux 5 titres
récents, puis 5 titres moins récents, tu fais :

boucle1 : {0,5}{doublons}
boucle2 : {0,5}{doublons} (car les 5 premiers ont été éliminés par le
                           {doublons} de la boucle1)

(En général on ne mélange pas {0,10} et {1/2}...{2/2})

Autre solution, si tu veux tout avoir, mais en deux groupes :
bouclea : {1/2}{doublons}
boucleb : {doublons} (car la première moitié a été éliminée par le
                      {doublons} de la boucleA, et tu veux tout le reste)

-- Fil

Merci beaucoup je vais explorer cela... je n'avais effectivement pas pensé à
exploiter toutes les possibilités autour de {doublons}... cela va finir par
rentrer :slight_smile:

Cordialement