image aléatoire n'apparait pas toujours

bonjour
sur un spip 1.9.2d (mais j'avais le même souci avec d'autres versions de spip) sur trois serveurs différents, la boucle

------------

<B_docuImg>
<BOUCLE_docuImg(DOCUMENTS){doublons}{par hasard}{extension==jpg|png|gif}{0,1}>
   <BOUCLE_chercheLienArticle(SPIP_DOCUMENTS_ARTICLES){id_document}>#SET{current_id_art, #ID_ARTICLE}</BOUCLE_chercheLienArticle>

    <B_vignetteArticle>
<div class="rubriques">
  <h2 class="menu-titre">Image au hasard</h2>

   <BOUCLE_vignetteArticle(ARTICLES){id_rubrique=4}{id_article=#GET{current_id_art}}{statut IN prepa, prop, publie}{0,1}>[<a href="#URL_ARTICLE"title="[(#TITRE|couper{80})]">(#FICHIER|reduire_image{159,159})</a>]
    </BOUCLE_vignetteArticle>
  
</div>
</B_vignetteArticle>
</BOUCLE_docuImg>
</B_docuImg>

---------------

ne récupère pas toujours d'image, pourquoi?

jc - atelierquatrechoses.org

jc a écrit (en cette belle journée du 16/03/2008 09:35) :

bonjour
sur un spip 1.9.2d (mais j'avais le même souci avec d'autres versions de spip) sur trois serveurs différents, la boucle

------------

<B_docuImg>
<BOUCLE_docuImg(DOCUMENTS){doublons}{par hasard}{extension==jpg|png|gif}{0,1}>
   <BOUCLE_chercheLienArticle(SPIP_DOCUMENTS_ARTICLES){id_document}>#SET{current_id_art, #ID_ARTICLE}</BOUCLE_chercheLienArticle>

    <B_vignetteArticle>
<div class="rubriques">
  <h2 class="menu-titre">Image au hasard</h2>

   <BOUCLE_vignetteArticle(ARTICLES){id_rubrique=4}{id_article=#GET{current_id_art}}{statut IN prepa, prop, publie}{0,1}>[<a href="#URL_ARTICLE"title="[(#TITRE|couper{80})]">(#FICHIER|reduire_image{159,159})</a>]
    </BOUCLE_vignetteArticle>
  
</div>
</B_vignetteArticle>
</BOUCLE_docuImg>
</B_docuImg>

---------------

ne récupère pas toujours d'image, pourquoi?

jc - atelierquatrechoses.org

question mal posée?

jc

jc wrote:

question mal posée?

tu cherches un doc au hasard parmi tous les docs.
quand tu l'as trouvé, tu cherches l'id de l'article qui y est lié.
quand tu l'as trouvé, tu cherches l'article qui a cet id,
MAIS *seulement si* cet article est rattaché à la rubrique d'id 4.

et si c'est pas le cas ?

denisb a écrit (en cette belle journée du 17/03/2008 00:16) :

jc wrote:

question mal posée?

tu cherches un doc au hasard parmi tous les docs.
quand tu l'as trouvé, tu cherches l'id de l'article qui y est lié.
quand tu l'as trouvé, tu cherches l'article qui a cet id,
MAIS *seulement si* cet article est rattaché à la rubrique d'id 4.

et si c'est pas le cas ?

il faudrait donc que je puisse choisir la rubrique avant de chercher le doc au hasard? {id_rubrique=4} lors de l'inclusion de la boucle?
j'essaie
merci

jc

Oui normalement c’est ça.

Tu fais une boucle ARTICLE avec le critère rub4. Dans cette boucle, tu insères la boucle DOCUMENTS qui t’est nécessaire. N’oublie pas le critère doublons (que tu nommes).
Puis tu fais ta boucle DOCUMENT au hasard qui sélectionnera les images qui sont dans le doublons que tu as nommé. Et là, il n’y aura pas de soucis pour l’absence de documents car tu ne choisis que des documents existant.

Tu récupères l’ID_ARTICLE par la boucle que tu as déterminé SPIP_DOCUMENTS_ARTICLES directement dans la boucle DOCUMENT au hasard…

Euh… je ne sais pas si j’ai été clair en fait…

Le 17/03/08, jc <jc.sekinger@free.fr> a écrit :

denisb a écrit (en cette belle journée du 17/03/2008 00:16) :

jc wrote:

question mal posée?

tu cherches un doc au hasard parmi tous les docs.
quand tu l’as trouvé, tu cherches l’id de l’article qui y est lié.
quand tu l’as trouvé, tu cherches l’article qui a cet id,
MAIS seulement si cet article est rattaché à la rubrique d’id 4.

et si c’est pas le cas ?

il faudrait donc que je puisse choisir la rubrique avant de chercher le
doc au hasard? {id_rubrique=4} lors de l’inclusion de la boucle?
j’essaie
merci

jc


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
FAQ : http://www.spip.net/fr_article1054.html

jc a écrit :

denisb a écrit (en cette belle journée du 17/03/2008 00:16) :

jc wrote:

question mal posée?

tu cherches un doc au hasard parmi tous les docs.
quand tu l'as trouvé, tu cherches l'id de l'article qui y est lié.
quand tu l'as trouvé, tu cherches l'article qui a cet id,
MAIS *seulement si* cet article est rattaché à la rubrique d'id 4.

et si c'est pas le cas ?

il faudrait donc que je puisse choisir la rubrique avant de chercher le doc au hasard? {id_rubrique=4} lors de l'inclusion de la boucle?
j'essaie
merci

jc

peut etre :

<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
  <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par hasard}{extension==jpg|png|gif}{0,1}></BOUCLE_D>
</BOUCLE_A>

<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
[<a href="#URL_ARTICLE" title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

Stephane a écrit (en cette belle journée du 17/03/2008 12:12) :

jc a écrit :

denisb a écrit (en cette belle journée du 17/03/2008 00:16) :

jc wrote:

question mal posée?

tu cherches un doc au hasard parmi tous les docs.
quand tu l'as trouvé, tu cherches l'id de l'article qui y est lié.
quand tu l'as trouvé, tu cherches l'article qui a cet id,
MAIS *seulement si* cet article est rattaché à la rubrique d'id 4.

et si c'est pas le cas ?

il faudrait donc que je puisse choisir la rubrique avant de chercher le doc au hasard? {id_rubrique=4} lors de l'inclusion de la boucle?
j'essaie
merci

jc

peut etre :

<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
  <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par hasard}{extension==jpg|png|gif}{0,1}></BOUCLE_D>
</BOUCLE_A>

<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
[<a href="#URL_ARTICLE" title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

c'est joli (c'est à ça aussi que je vois que j'ai cinq trains de retard) mais ça ne marche quand même pas

jc

Teddy Payet a écrit (en cette belle journée du 17/03/2008 12:04) :

Oui normalement c'est ça.

Tu fais une boucle ARTICLE avec le critère rub4. Dans cette boucle, tu insères la boucle DOCUMENTS qui t'est nécessaire. N'oublie pas le critère doublons (que tu nommes).
Puis tu fais ta boucle DOCUMENT au hasard qui sélectionnera les images qui sont dans le doublons que tu as nommé. Et là, il n'y aura pas de soucis pour l'absence de documents car tu ne choisis que des documents existant.

Tu récupères l'ID_ARTICLE par la boucle que tu as déterminé SPIP_DOCUMENTS_ARTICLES directement dans la boucle DOCUMENT au hasard...

Euh... je ne sais pas si j'ai été clair en fait...

tu as été clair bien sûr! :))
mais pas pour moi :expressionless:

merci

jc

jc a écrit :

Stephane a écrit (en cette belle journée du 17/03/2008 12:12) :

jc a écrit :

denisb a écrit (en cette belle journée du 17/03/2008 00:16) :

jc wrote:

question mal posée?

tu cherches un doc au hasard parmi tous les docs.
quand tu l'as trouvé, tu cherches l'id de l'article qui y est lié.
quand tu l'as trouvé, tu cherches l'article qui a cet id,
MAIS *seulement si* cet article est rattaché à la rubrique d'id 4.

et si c'est pas le cas ?

il faudrait donc que je puisse choisir la rubrique avant de chercher le doc au hasard? {id_rubrique=4} lors de l'inclusion de la boucle?
j'essaie
merci

jc

peut etre :

<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
  <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par hasard}{extension==jpg|png|gif}{0,1}></BOUCLE_D>
</BOUCLE_A>

<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
[<a href="#URL_ARTICLE" title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

c'est joli (c'est à ça aussi que je vois que j'ai cinq trains de retard) mais ça ne marche quand même pas

heu, mais encore ?

ajoute un peu d'affichage pour debuger :

[(#REM) prendre tous les articles de la rubrique 4]
<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
article de la rubrique : #ID_ARTICLE<br/>
[(#REM) prendre une image au hasard pour chacun de ces article et les empiler (doublons) ]
   <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par
hasard}{extension==jpg|png|gif}{0,1}>une image de cet article: #ID_DOCUMENT<br/>
</BOUCLE_D>
</BOUCLE_A>

[(#REM) prendre une image au hasard dans celles empilées]
<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
Le document finalement retenu : #ID_DOCUMENT<br/>
[(#REM) prendre l'article correspondant]
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
l'article correspondant : #ID_ARTICLE<hr/>
[<a href="#URL_ARTICLE"
title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

@++

Ça donnerait quelque chose de ce genre:

<B_docuImg>
<BOUCLE_articleRubriqueChoisi(ARTICLES){rubrique=4}{statut
IN prepa, prop, publie}>
<BOUCLE_documentArtRubChoisi(DOCUMENTS){id_article}{extension==jpg|png|gif}{doublons docuimg}>
</BOUCLE_documentArtRubChoisi>
</BOUCLE_articleRubriqueChoisi>
<B_vignetteArticle>

Image au hasard

<BOUCLE_vignetteDocuments(DOCUMENTS){!doublons docuimg}{par
hasard}{extension==jpg|png|gif}{0,1}>
<BOUCLE_chercheLienArticle(SPIP_DOCUMENTS_ARTICLES){id_document}>[<a
href=« #URL_ARTICLE"title= »[(#_vignetteDocuments:TITRE|couper{80})]">(#_vignetteDocuments:FICHIER|reduire_image{159,159})]</BOUCLE_chercheLienArticle>
</BOUCLE_vignetteDocuments>

Le 17/03/08, jc <jc.sekinger@free.fr> a écrit :

Teddy Payet a écrit (en cette belle journée du 17/03/2008 12:04) :

Oui normalement c’est ça.

Tu fais une boucle ARTICLE avec le critère rub4. Dans cette boucle, tu
insères la boucle DOCUMENTS qui t’est nécessaire. N’oublie pas le
critère doublons (que tu nommes).
Puis tu fais ta boucle DOCUMENT au hasard qui sélectionnera les images
qui sont dans le doublons que tu as nommé. Et là, il n’y aura pas de
soucis pour l’absence de documents car tu ne choisis que des documents
existant.

Tu récupères l’ID_ARTICLE par la boucle que tu as déterminé
SPIP_DOCUMENTS_ARTICLES directement dans la boucle DOCUMENT au hasard…

Euh… je ne sais pas si j’ai été clair en fait…

tu as été clair bien sûr! :))
mais pas pour moi :expressionless:

merci

jc


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
FAQ : http://www.spip.net/fr_article1054.html

Stephane a écrit (en cette belle journée du 17/03/2008 12:56) :

jc a écrit :

Stephane a écrit (en cette belle journée du 17/03/2008 12:12) :

jc a écrit :

denisb a écrit (en cette belle journée du 17/03/2008 00:16) :

jc wrote:

question mal posée?

tu cherches un doc au hasard parmi tous les docs.
quand tu l'as trouvé, tu cherches l'id de l'article qui y est lié.
quand tu l'as trouvé, tu cherches l'article qui a cet id,
MAIS *seulement si* cet article est rattaché à la rubrique d'id 4.

et si c'est pas le cas ?

il faudrait donc que je puisse choisir la rubrique avant de chercher le doc au hasard? {id_rubrique=4} lors de l'inclusion de la boucle?
j'essaie
merci

jc

peut etre :

<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
  <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par hasard}{extension==jpg|png|gif}{0,1}></BOUCLE_D>
</BOUCLE_A>

<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
[<a href="#URL_ARTICLE" title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

c'est joli (c'est à ça aussi que je vois que j'ai cinq trains de retard) mais ça ne marche quand même pas

heu, mais encore ?

ajoute un peu d'affichage pour debuger :

[(#REM) prendre tous les articles de la rubrique 4]
<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
article de la rubrique : #ID_ARTICLE<br/>
[(#REM) prendre une image au hasard pour chacun de ces article et les empiler (doublons) ]
   <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par
hasard}{extension==jpg|png|gif}{0,1}>une image de cet article: #ID_DOCUMENT<br/>
</BOUCLE_D>
</BOUCLE_A>

[(#REM) prendre une image au hasard dans celles empilées]
<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
Le document finalement retenu : #ID_DOCUMENT<br/>
[(#REM) prendre l'article correspondant]
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
l'article correspondant : #ID_ARTICLE<hr/>
[<a href="#URL_ARTICLE"
title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

@++

ha bien!
ayant testé avec cette boucle (dont je comprends pas mieux le fonctionnement, désolé) je vois qu'elle va me chercher des articles dans tout le site et pas seulement dans la rubrique4!

je suis un peu confus là

jc

Stephane a écrit (en cette belle journée du 17/03/2008 12:56) :

jc a écrit :

Stephane a écrit (en cette belle journée du 17/03/2008 12:12) :

jc a écrit :

denisb a écrit (en cette belle journée du 17/03/2008 00:16) :

jc wrote:

question mal posée?

tu cherches un doc au hasard parmi tous les docs.
quand tu l'as trouvé, tu cherches l'id de l'article qui y est lié.
quand tu l'as trouvé, tu cherches l'article qui a cet id,
MAIS *seulement si* cet article est rattaché à la rubrique d'id 4.

et si c'est pas le cas ?

il faudrait donc que je puisse choisir la rubrique avant de chercher le doc au hasard? {id_rubrique=4} lors de l'inclusion de la boucle?
j'essaie
merci

jc

peut etre :

<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
  <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par hasard}{extension==jpg|png|gif}{0,1}></BOUCLE_D>
</BOUCLE_A>

<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
[<a href="#URL_ARTICLE" title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

c'est joli (c'est à ça aussi que je vois que j'ai cinq trains de retard) mais ça ne marche quand même pas

heu, mais encore ?

ajoute un peu d'affichage pour debuger :

[(#REM) prendre tous les articles de la rubrique 4]
<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
article de la rubrique : #ID_ARTICLE<br/>
[(#REM) prendre une image au hasard pour chacun de ces article et les empiler (doublons) ]
   <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par
hasard}{extension==jpg|png|gif}{0,1}>une image de cet article: #ID_DOCUMENT<br/>
</BOUCLE_D>
</BOUCLE_A>

[(#REM) prendre une image au hasard dans celles empilées]
<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
Le document finalement retenu : #ID_DOCUMENT<br/>
[(#REM) prendre l'article correspondant]
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
l'article correspondant : #ID_ARTICLE<hr/>
[<a href="#URL_ARTICLE"
title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

@++

rectification, il me semble que ces boucles donnent le bon resultat en fait! j'essaie donc

Stephane a écrit (en cette belle journée du 17/03/2008 12:56) :

jc a écrit :

Stephane a écrit (en cette belle journée du 17/03/2008 12:12) :

jc a écrit :

denisb a écrit (en cette belle journée du 17/03/2008 00:16) :

jc wrote:

question mal posée?

tu cherches un doc au hasard parmi tous les docs.
quand tu l'as trouvé, tu cherches l'id de l'article qui y est lié.
quand tu l'as trouvé, tu cherches l'article qui a cet id,
MAIS *seulement si* cet article est rattaché à la rubrique d'id 4.

et si c'est pas le cas ?

il faudrait donc que je puisse choisir la rubrique avant de chercher le doc au hasard? {id_rubrique=4} lors de l'inclusion de la boucle?
j'essaie
merci

jc

peut etre :

<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
  <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par hasard}{extension==jpg|png|gif}{0,1}></BOUCLE_D>
</BOUCLE_A>

<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
[<a href="#URL_ARTICLE" title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

c'est joli (c'est à ça aussi que je vois que j'ai cinq trains de retard) mais ça ne marche quand même pas

heu, mais encore ?

ajoute un peu d'affichage pour debuger :

[(#REM) prendre tous les articles de la rubrique 4]
<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
article de la rubrique : #ID_ARTICLE<br/>
[(#REM) prendre une image au hasard pour chacun de ces article et les empiler (doublons) ]
   <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par
hasard}{extension==jpg|png|gif}{0,1}>une image de cet article: #ID_DOCUMENT<br/>
</BOUCLE_D>
</BOUCLE_A>

[(#REM) prendre une image au hasard dans celles empilées]
<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
Le document finalement retenu : #ID_DOCUMENT<br/>
[(#REM) prendre l'article correspondant]
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
l'article correspondant : #ID_ARTICLE<hr/>
[<a href="#URL_ARTICLE"
title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

@++

hé non, l'image est bien choisie, dans la bonne rubrique, mais elle n'est pas affichée!

Stephane a écrit (en cette belle journée du 17/03/2008 12:56) :

jc a écrit :

Stephane a écrit (en cette belle journée du 17/03/2008 12:12) :

jc a écrit :

denisb a écrit (en cette belle journée du 17/03/2008 00:16) :

jc wrote:

question mal posée?

tu cherches un doc au hasard parmi tous les docs.
quand tu l'as trouvé, tu cherches l'id de l'article qui y est lié.
quand tu l'as trouvé, tu cherches l'article qui a cet id,
MAIS *seulement si* cet article est rattaché à la rubrique d'id 4.

et si c'est pas le cas ?

il faudrait donc que je puisse choisir la rubrique avant de chercher le doc au hasard? {id_rubrique=4} lors de l'inclusion de la boucle?
j'essaie
merci

jc

peut etre :

<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
  <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par hasard}{extension==jpg|png|gif}{0,1}></BOUCLE_D>
</BOUCLE_A>

<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
[<a href="#URL_ARTICLE" title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

c'est joli (c'est à ça aussi que je vois que j'ai cinq trains de retard) mais ça ne marche quand même pas

heu, mais encore ?

ajoute un peu d'affichage pour debuger :

[(#REM) prendre tous les articles de la rubrique 4]
<BOUCLE_A(ARTICLES){id_rubrique=4}{statut IN prepa,prop,publie}>
article de la rubrique : #ID_ARTICLE<br/>
[(#REM) prendre une image au hasard pour chacun de ces article et les empiler (doublons) ]
   <BOUCLE_D(DOCUMENTS){id_article}{doublons}{par
hasard}{extension==jpg|png|gif}{0,1}>une image de cet article: #ID_DOCUMENT<br/>
</BOUCLE_D>
</BOUCLE_A>

[(#REM) prendre une image au hasard dans celles empilées]
<BOUCLE_DOC(DOCUMENTS){!doublons}{par hasard}{0,1}>
Le document finalement retenu : #ID_DOCUMENT<br/>
[(#REM) prendre l'article correspondant]
<BOUCLE_ART(ARTICLES){id_article}{statut?}>
l'article correspondant : #ID_ARTICLE<hr/>
[<a href="#URL_ARTICLE"
title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>
</BOUCLE_DOC>

@++

la boucle_art ne s'affiche pas:

<BOUCLE_ART(ARTICLES){id_article}{statut?}>
l'article correspondant : #ID_ARTICLE<hr/>
[<a href="#URL_ARTICLE" title="[(#TITRE|couper{80})]">(#_DOC:FICHIER|reduire_image{159,159})</a>]
</BOUCLE_ART>

Teddy Payet a écrit (en cette belle journée du 17/03/2008 13:42) :

Ça donnerait quelque chose de ce genre:

<B_docuImg>
<BOUCLE_articleRubriqueChoisi(ARTICLES){rubrique=4}{statut
IN prepa, prop, publie}>
<BOUCLE_documentArtRubChoisi(DOCUMENTS){id_article}{extension==jpg|png|gif}{doublons docuimg}>
</BOUCLE_documentArtRubChoisi>
</BOUCLE_articleRubriqueChoisi>
        <B_vignetteArticle>
<div class="rubriques">
       <h2 class="menu-titre">Image au hasard</h2>

<BOUCLE_vignetteDocuments(DOCUMENTS){!doublons docuimg}{par
hasard}{extension==jpg|png|gif}{0,1}>
<BOUCLE_chercheLienArticle(SPIP_DOCUMENTS_ARTICLES){id_document}>[<a
href="#URL_ARTICLE"title="[(#_vignetteDocuments:TITRE|couper{80})]">(#_vignetteDocuments:FICHIER|reduire_image{159,159})</a>]</BOUCLE_chercheLienArticle>
               </BOUCLE_vignetteDocuments>

</div>
</B_vignetteArticle>
</BOUCLE_docuImg>
</B_docuImg>

c'est gentil de se pencher sur cette question mais voilà: cette boucle donne ça

# Erreur(s) dans le squelette

     * Syntaxe boucle incorrecte, _docuImg
     * Erreur sur le site, ){rubrique=4}{statut IN prepa, prop, publie}>
       Image au hasard
       [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

     * Erreur sur le site, ){rubrique=4}{statut IN prepa, prop, publie}>
       Image au hasard
       [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

     * Erreur sur le site, ){rubrique=4}{statut IN prepa, prop, publie}>
       Image au hasard
       [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

     * Erreur sur le site, ){rubrique=4}{statut IN prepa, prop, publie}>
       Image au hasard
       [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

(...)
toutes ces réflexions (surtout les vôtres,ce dont je vous remercie) m'ont permis de faire une boucle qui n'est pas très brillante mais qui marche pour ne récupérer que des images d'un portfolio (mais pas tous les docs, je n'y arrive pas)

<BOUCLE_doc_rub(RUBRIQUES){id_rubrique=4}>

  <B_ArticleChoisi>
  
  <div class="rubriques">
  <h2 class="menu-titre">Image au hasard</h2>
  
  <BOUCLE_ArticleChoisi(ARTICLES){id_rubrique}{statut IN prepa, prop, publie}{par hasard}{0,1}>

<BOUCLE_vignetteDocuments(DOCUMENTS){id_article}{par hasard}{extension==jpg|png|gif}{0,1}>
<BOUCLE_chercheLienArticle(SPIP_DOCUMENTS_ARTICLES){id_document}{id_article}>[<a href="#URL_ARTICLE"title="[(#_vignetteDocuments:TITRE|couper{80})]">(#_vignetteDocuments:FICHIER|reduire_image{159,159})</a>]</BOUCLE_chercheLienArticle>
</BOUCLE_vignetteDocuments>
    
  </BOUCLE_ArticleChoisi>
  
  </div>
  </B_ArticleChoisi>

</BOUCLE_doc_rub>

merci encore

L'erreur vient du critère "rubrique". Il faut id_rubrique=4 au lieur de rubrique=4...
J'ai tapé cette boucle un trop rapidement entre 2 dossiers.
Normalement ça devrait être bon... En tout cas pour ma part. :wink:
A tester.

Le 17 mars 08 à 15:38, jc a écrit :

Teddy Payet a écrit (en cette belle journée du 17/03/2008 13:42) :

Ça donnerait quelque chose de ce genre:

<B_docuImg>
<BOUCLE_articleRubriqueChoisi(ARTICLES){rubrique=4}{statut
IN prepa, prop, publie}>
<BOUCLE_documentArtRubChoisi(DOCUMENTS){id_article}{extension==jpg|png|gif}{doublons
docuimg}>
</BOUCLE_documentArtRubChoisi>
</BOUCLE_articleRubriqueChoisi>
        <B_vignetteArticle>
<div class="rubriques">
       <h2 class="menu-titre">Image au hasard</h2>

<BOUCLE_vignetteDocuments(DOCUMENTS){!doublons docuimg}{par
hasard}{extension==jpg|png|gif}{0,1}>
<BOUCLE_chercheLienArticle(SPIP_DOCUMENTS_ARTICLES){id_document}>[<a
href="#URL_ARTICLE"title="[(#_vignetteDocuments:TITRE|couper{80})]">(#_vignetteDocuments:FICHIER|reduire_image{159,159})</a>]</BOUCLE_chercheLienArticle>
               </BOUCLE_vignetteDocuments>

</div>
</B_vignetteArticle>
</BOUCLE_docuImg>
</B_docuImg>

c'est gentil de se pencher sur cette question mais voilà: cette boucle
donne ça

# Erreur(s) dans le squelette

     * Syntaxe boucle incorrecte, _docuImg
     * Erreur sur le site, ){rubrique=4}{statut IN prepa, prop, publie}>
       Image au hasard
       [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

     * Erreur sur le site, ){rubrique=4}{statut IN prepa, prop, publie}>
       Image au hasard
       [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

     * Erreur sur le site, ){rubrique=4}{statut IN prepa, prop, publie}>
       Image au hasard
       [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

     * Erreur sur le site, ){rubrique=4}{statut IN prepa, prop, publie}>
       Image au hasard
       [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

_______________________________________________
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
FAQ : FAQ webmestre - SPIP

Payet Teddy a écrit (en cette belle journée du 17/03/2008 23:20) :

L'erreur vient du critère "rubrique". Il faut id_rubrique=4 au lieur de rubrique=4...
J'ai tapé cette boucle un trop rapidement entre 2 dossiers.
Normalement ça devrait être bon... En tout cas pour ma part. :wink:
A tester.

c'est gentil... mais j'ai maintenant une autre erreur!

Spip 1.9.2d debug Atelier Quatre choses

     * Erreur(s) dans le squelette
           o Syntaxe boucle incorrecte, _docuImg
           o Erreur sur le site, ){id_rubrique=4}{statut IN prepa, prop, publie}>
             Image au hasard
             [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

           o Erreur sur le site, ){id_rubrique=4}{statut IN prepa, prop, publie}>
             Image au hasard
             [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

           o Erreur sur le site, ){id_rubrique=4}{statut IN prepa, prop, publie}>
             Image au hasard
             [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

           o Erreur sur le site, ){id_rubrique=4}{statut IN prepa, prop, publie}>
             Image au hasard
             [(#_vignetteDocuments:FICHIER|reduire_image{159,159})]

je n'y comprends rien, ta boucle semble bien!

bizarre, il est pas passé sur la liste celui la...

jc a écrit :

ayant testé avec cette boucle (dont je comprends pas mieux le fonctionnement, désolé)

ben je t'ai ajouté l'explication en commentaire :
1- prendre tous les articles de la rubrique 4
  => prendre une image au hasard pour chacun de ces article et les
empiler (doublons)

2- prendre une image au hasard dans celles empilées
  => prendre l'article correspondant

la seule subtilité, c'est #_DOC:FICHIER qui remonte à BOUCLE_DOC pour
prendre la balise #FICHIER mais en fait c'est sans doute meme pas
necessaire vu qu'il n'y a pas de balise #FICHIER dans les boucles ARTICLES

Elle affiche quoi (code HTML) ?
c'est quoi qui n'est pas trouvé ?
le document ? l'article ? la balise FICHIER ?

jc a écrit (en cette belle journée du 16/03/2008 09:35) :

bonjour
sur un spip 1.9.2d (mais j'avais le même souci avec d'autres versions de spip) sur trois serveurs différents, la boucle

------------

<B_docuImg>
<BOUCLE_docuImg(DOCUMENTS){doublons}{par hasard}{extension==jpg|png|gif}{0,1}>
   <BOUCLE_chercheLienArticle(SPIP_DOCUMENTS_ARTICLES){id_document}>#SET{current_id_art, #ID_ARTICLE}</BOUCLE_chercheLienArticle>

    <B_vignetteArticle>
<div class="rubriques">
  <h2 class="menu-titre">Image au hasard</h2>

   <BOUCLE_vignetteArticle(ARTICLES){id_rubrique=4}{id_article=#GET{current_id_art}}{statut IN prepa, prop, publie}{0,1}>[<a href="#URL_ARTICLE"title="[(#TITRE|couper{80})]">(#FICHIER|reduire_image{159,159})</a>]
    </BOUCLE_vignetteArticle>
  
</div>
</B_vignetteArticle>
</BOUCLE_docuImg>
</B_docuImg>

---------------

ne récupère pas toujours d'image, pourquoi?

jc - atelierquatrechoses.org

bonjour

j'ai trouvé une solution
dans tmp, j'ai effacé plugin_xml.cache parce que j'avais trouvé dedans "la trace" (je ne suis pas informaticien:)) du plugin "associations" que je n'avais jamais utilisé, n'ayant pas compris comment faire (je ne suis pas brillant brillant non plus) et ayant même, presqu'aussitôt, effacé son répertoire.
depuis, j'ai vidé le cache et les boutons de statuts se sont remis en place!

merci pour les pistes !

__
jc