Boucles en double dans un squelette

/(en espérant ne pas avoir envoyé ce mail en double)/

Bonjour à tous
Je me lance avec Spip et je bute sur certains problèmes sans doute parfaitement simples, alors autant demander de l'aide à ceux qui savent.
--
Alors voilà, j'aimerais afficher dans une zone les titres des articles dépendant d'une rubrique (qui seraient des liens vers ces articles) et dans une autre zone, un de ces articles.
Idéalement, il faudrait que l'article sélectionné ne soit pas actif comme lien.

Rubrique 1
-- *article 1 de la rubrique 1*
-- _article 2 de la rubrique 1_
-- _article 3 de la rubrique 1
_Rubrique 2
/(articles non listés car je ne suis pas dans cette rubrique)/_
_

Titre article 1 de la rubrique 1

Contenu article 1 de la rubrique 1 blabla
bla blablabla blablabla ...

Idéalement il faudrait aussi que j'aie d'autres articles (par ex article 4 de la rubrique 1) qui ne s'affichent pas dans la liste des articles de la rubrique 1 mais qui déploient cette rubrique si on les appelle... Hmmm... Rien qu'en le disant je trouve ça compliqué.

Les cas possibles sont donc :
- j'appelle une rubrique, je veux afficher les titres des articles de cette rubrique (sauf certains qui seraient masqués) et en même temps afficher un texte par défaut correspondant à cette rubrique
- j'appelle un article précis, je veux qu'il s'affiche mais que, à côté, la liste des articles appartenant à la même rubrique soit montrés (sauf certains qui seraient masqués)
- j'appelle un article masqué dans la liste des articles d'une rubrique, je veux qu'il s'affiche mais que, à côté, la liste des articles appartenant à la même rubrique soit montrés (sauf certains qui seraient masqués)

J'utilise le squelette rubrique=/id/.html (il n'y a que trois rubriques et je veux que chacune ait un univers graphique différent) mais je sens bien que je tâtonne.
De plus je n'arrive pas bien à utiliser les boucles.
En effet si j'écris :

/ <BOUCLE_articles_recents(ARTICLES) {par date}{inverse} {0,2}{id_rubrique} {doublons}>
                        <span>#TITRE</span>
                        <div class="#EDIT{texte} texte">#TEXTE</div>
                        <br class="nettoyeur" />
  </BOUCLE_articles_recents>/

Et si plus loin j'écris :

/ <BOUCLE_articles_recents2(ARTICLES) {par date}{inverse} {0,2}{id_rubrique} {doublons}>
                        <span>#TITRE</span>
                        <div class="#EDIT{texte} texte">#TEXTE</div>
                        <br class="nettoyeur" />
  </BOUCLE_articles_recents2>/

La première boucle me montrera les articles 1 et 2 et la seconde boucle me montrera les articles 3 et 4, la boucle ne repart pas à zéro.

Je prends tout conseil, et j'aimerais savoir en tout cas comment on crée une boucle qui reprend une liste des éléments à zéro au lieu de continuer

Jean-noël Lafargue a écrit :

Bonjour et bienvenue

Que de questions en un seul message !

Pour afficher 3 articles d’une rubrique dans un squelette rubrique.html, c’est du genre de ta première boucle
<BOUCLE_articles_recents(ARTICLES) {par date}{inverse} {0,3}{id_rubrique} {doublons}>

Pour masquer certains articles, tu peux aussi créer un mot-clé « masquer » par exemple, puis tu fais une première boucle qui va chercher ces articles sans les afficher et avec le critère doublons
<BOUCLE_articles_masqués(ARTICLES) {id_rubrique} {titre_mot=masquer}{doublons}>
Puis tu fais une autre boucle avec le critères doublons qui va chercher les autres
<BOUCLE_articles_affichés(ARTICLES) {par date}{inverse} {id_rubrique} {doublons}>

Pour afficher les articles de la meme rubrique sauf celui en cours, c’est
<BOUCLE_meme_rubrique(ARTICLES){id_rubrique}{exclus}{par date}{inverse}>

Pour afficher un texte par défaut à la rubrique, tu peux utiliser le descriptif de la rubrique

Pour l’exemple que tu donnes ta 2e boucle ne donnera rien puisqu’elle appelle les mêmes articles que la 1e mais avec {doublons} et comme ils sont affichés plus haut …
Si tu veux les 2 suivants, ce serait {2,2}
Le premier chiffre donne le premier article pris en compte (on commence à 0 et pas à 1) et le deuxième le nombre d’articles

En jonglant avec tout ça tu devrais déjà pouvoir avancer.

N’hésite pas à revenir sur la liste pour des précisions ou des compléments.

Bon courage

Jean-Christophe Villeneuve a écrit :

En jonglant avec tout ça tu devrais déjà pouvoir avancer.
N’hésite pas à revenir sur la liste pour des précisions ou des compléments.

Tu peux me faire confiance pour revenir
Merci de cette grande aide
jn

bon bon bon, je commence à me débrouiller même si j'ai parfois la méchante sensation de bricoler.
une chose que je n'arrive pas à faire :

supposons que j'aie deux rubriques et que je veuille montrer les titres de leurs articles.
J'y arrive avec ça :

    <BOUCLE_rubrique1(ARTICLES){id_rubrique=1}>

et ça

    <BOUCLE_rubrique2(ARTICLES){id_rubrique=2}>

... Maintenant, supposons que je veuilles afficher l'article 3 de la rubrique 1
J'aimerais que "article.html" s'ouvre avec le paramètre "?article3" - ce qui marche très bien - mais je voudrais en plus que la boucle _rubrique1 (ci dessus) soit affichée (car l'article appartient à la rubrique 1) mais pas la boucle _rubrique2.
... Je ne trouve pas le moyen
voilà
je prends toute aide :slight_smile:

C’est le critètre {id_parent} que tu cherches

Paul(5eBleu)

2008/9/15 Jean-noël Lafargue <jn@hyperbate.com>

bon bon bon, je commence à me débrouiller même si j’ai parfois la méchante sensation de bricoler.
une chose que je n’arrive pas à faire :

supposons que j’aie deux rubriques et que je veuille montrer les titres de leurs articles.
J’y arrive avec ça :

<BOUCLE_rubrique1(ARTICLES){id_rubrique=1}>

et ça

<BOUCLE_rubrique2(ARTICLES){id_rubrique=2}>

… Maintenant, supposons que je veuilles afficher l’article 3 de la rubrique 1
J’aimerais que « article.html » s’ouvre avec le paramètre « ?article3 » - ce qui marche très bien - mais je voudrais en plus que la boucle _rubrique1 (ci dessus) soit affichée (car l’article appartient à la rubrique 1) mais pas la boucle _rubrique2.
… Je ne trouve pas le moyen
voilà
je prends toute aide :slight_smile:


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip

Documentation de SPIP : http://www.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

Paul a écrit :

C'est le critètre {id_parent} que tu cherches

eh non en fait ce n'est pas ça apparemment
disons que j'appelle l'article x et que j'aimerais afficher la liste des articles qui appartiennent à la même rubrique

[(#REM) Articles dans la meme rubrique ]
<B_articles_rubrique>

<:meme_rubrique:>

On Mon, Sep 15, 2008 at 2:47 PM, Jean-noël Lafargue <jn@hyperbate.com> wrote:

Paul a écrit :

C’est le critètre {id_parent} que tu cherches

eh non en fait ce n’est pas ça apparemment
disons que j’appelle l’article x et que j’aimerais afficher la liste des articles qui appartiennent à la même rubrique


liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip

Documentation de SPIP : http://www.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

Jean-noël Lafargue a écrit :

Paul a écrit :

C'est le critètre {id_parent} que tu cherches

eh non en fait ce n'est pas ça apparemment
disons que j'appelle l'article x et que j'aimerais afficher la liste des articles qui appartiennent à la même rubrique

Le paramètre {id_rubrique} est utilisable de puis une boucle d'article

Donc :

<BOUCLE_article3(ARTICLES){id_article}{doublons}>
<h1>#TITRE</h1>
#TEXTE
<BOUCLE_autres_art_de_la_rub_de_art3(ARTICLES){id_rubrique}{doublons}>
<p>#TITRE</p>
</BOUCLE_autres_art_de_la_rub_de_art3>
</BOUCLE_article3>

ça le fait.

Voir La boucle ARTICLES - SPIP

--
Suske

Merci Paul et Suske, effectivement la solution est proche
Mais il faut que je rajoute une condition pour que ne s'affiche que ce qui correspond à la rubrique sous le nom de la rubrique

Si j'appelle un article de la rubrique 1 je verrais ce menu :

- Rubrique 1
-- Article 1 rubrique 1
-- Article 2 rubrique 1
- Rubrique 2

et si j'appelle un article de la rubrique 2, j'aimerais voir :

- Rubrique 1
- Rubrique 2
-- Article 1 rubrique 2
-- Article 2 rubrique 2

en fait il faudrait que je conditionne l'affichage de la boucle au fait qu'elle correspond à la rubrique.

Jean-noël Lafargue wrote:

en fait il faudrait que je conditionne l'affichage de la boucle au fait
qu'elle correspond à la rubrique.

Vite fait, qqch comme ça ?

<BOUCLE_contexte(ARTICLES){id_article}>
<BOUCLE_rubrique(RUBRIQUES){id_rubrique}>
<BOUCLE_rub_soeurs(RUBRIQUES){meme_parent}{par titre}>
<h1>#TITRE<h1>
<BOUCLE_article(ARTICLES){id_article}{doublons}>
<h2>#TITRE</h2>
#INTRODUCTION
<BOUCLE_autres_art_de_la_rub_de_art(ARTICLES){id_rubrique}{doublons}>
<h3>#TITRE</h3>
</BOUCLE_autres_art_de_la_rub_de_art>
</BOUCLE_article>
</BOUCLE_rub_soeurs>
</BOUCLE_rubrique>
</BOUCLE_contexte>

Il y a surement mieux mais amha ça le fait :slight_smile:

--
Suske