Boucle conditionnelle Spip

Résolu/Fermé
Rec - 5 mai 2009 à 15:44
 Elisa - 21 avril 2016 à 13:59
Bonjour, me voilà pour une autre question =)

J'utilise un site avec Spip v2 ; les articles de mes rubriques sont affichées grâce à une boucle ou, s'il n'y a pas d'article, la boucle affiche les sous rubriques.

J'aimerai réussir à intrduire une condition dans cette boucle pour que, lorsque la rubrique ne contienne qu'un seul article, celui-ci s'affiche directement. Actuellement, je suis obligé de cliquer sur un lien "suite"

La condition serait donc du style "Si nb article == 1 alors afficher tout l'article"

Pouvez vous m'aider ? Voici un morceau de ma boucle à modifier:

<BOUCLE_principal(RUBRIQUES) {id_rubrique=#ID_RUBRIQUE}>
<BOUCLE_articlesexclus1(ARTICLES) {type=_config_} {doublons}></BOUCLE_articlesexclus1>

<B_listearticle>

<BOUCLE_listearticle(ARTICLES) {id_rubrique=#ID_RUBRIQUE} {par date} {doublons}>

[<h2>(#TITRE|supprimer_numero)</h2>]
[<h5><b>(#SURTITRE)</b></h5><br/>]
[<p>(#SOUSTITRE)<br/></p>]
<p>[(#DATE|nom_jour)] [(#DATE|affdate)] // <B_auteurs_langue><:par_auteur:> <BOUCLE_auteurs_langue(AUTEURS) {id_article} {", "}><a href="#URL_SITE_SPIP/[(#URL_AUTEUR)]">#NOM</a></BOUCLE_auteurs_langue></p>

[<p>(#DESCRIPTIF|sinon{[(#CHAPO|sinon{[(#TEXTE|couper{200}|propre)]})]})<br/></p>]
<p><a href="#URL_SITE_SPIP/#URL_ARTICLE" title="...<:suite:>" ><:suite:></a></p>


</BOUCLE_listearticle>

</B_listearticle>

...

Merci beaucoup

2 réponses

C'est bon, j'ai réussi à faire ma boucle.
Si ça intéresse quelqu'un:

dans rubrique.html

<BOUCLE_test_articles(ARTICLES){id_rubrique}></BOUCLE_test_articles>
[(#TOTAL_BOUCLE|=={1}|?{#INCLURE{fond=rubrique_un_article}{id_rubrique},#INCLURE{fond=rubrique_plusieurs_article}{id_rubrique}})]
<//B_test_articles>


Quand on a 1 seul article, on inclu un squelette rubrique_un_article et sinon un squelette rubrique_plusieurs_articles.

rubrique_un_article.html:
affiche ce que vous voulez, la boucle article simple comme par exemple
<B_listearticle>

<BOUCLE_listearticle(ARTICLES) {id_rubrique=#ID_RUBRIQUE} {par date} {doublons}>
[<h2>(#TITRE|supprimer_numero)</h2>]
[<h5><b>(#SURTITRE)</b></h5><br/>]
[<p>(#SOUSTITRE)<br/></p>]
<p>[(#DATE|nom_jour)] [(#DATE|affdate)] // <B_auteurs_langue><:par_auteur:> <BOUCLE_auteurs_langue(AUTEURS) {id_article} {", "}><a href="#URL_SITE_SPIP/[(#URL_AUTEUR)]">#NOM</a></BOUCLE_auteurs_langue></p>

[<p>(#DESCRIPTIF|sinon{[(#CHAPO|sinon{[(#TEXTE)]})]})<br/></p>]
</BOUCLE_listearticle>

etc.


rubrique_plusieurs_articles:

Un boucle plus complète, rajouter par exemple sur la ligne
[<p>(#DESCRIPTIF|sinon{[(#CHAPO|sinon{[(#TEXTE)]})]})<br/></p>]

-> [<p>(#DESCRIPTIF|sinon{[(#CHAPO|sinon{[(#TEXTE|couper{200}|propre)]})]})<br/></p>]
<p><a href="#URL_SITE_SPIP/#URL_ARTICLE" title="...<:suite:>" ><:suite:></a></p>
1
Merci beaucoup
0
Merci et bravo. Ca m'a permis d'apprendre les expressions conditionnelles SPIP.
0