Posez votre question Signaler

Boucle conditionnelle Spip [Résolu]

Rec - Dernière réponse le 8 janv. 2010 à 22:32
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
Lire la suite 

Boucle conditionnelle Spip »

2 réponses
Réponse
+1
moins plus
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>
Ajouter un commentaire
Réponse
+0
moins plus
Merci et bravo. Ca m'a permis d'apprendre les expressions conditionnelles SPIP.
Ajouter un commentaire
Ce document intitulé « Boucle conditionnelle Spip » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook