image aléatoire au sein d'un article ?

Bonjour à tous, j’ai bien trouvé comment afficher une image aléatoire parmi toutes les images du site complet, en utilisant une boucle; maintenant ce que je souahiterai, c’est pouvoir intégrer une image aléatoire au sein d’un article SPIP! et là, je bloque… je me demandais s’il n’était pas possible d’utiliser des modèles pour cela mais je n’y suis pas parvenu… Quelqu’un a-t-il déjà essayé ce genre de chose ? est-ce possible d’après vous? avez vous des pistes ?
merci d’avance
SEB.

personne n'a d'idée là-dessus ???
siouplait ??

SEB a écrit :

Bonjour à tous, j'ai bien trouvé comment afficher une image aléatoire parmi toutes les images du site complet, en utilisant une boucle; maintenant ce que je souahiterai, c'est pouvoir intégrer une image aléatoire au sein d'un article SPIP! et là, je bloque... je me demandais s'il n'était pas possible d'utiliser des modèles pour cela mais je n'y suis pas parvenu... Quelqu'un a-t-il déjà essayé ce genre de chose ? est-ce possible d'après vous? avez vous des pistes ?
merci d'avance
SEB.

Bonjour Seb

J'ai fait cela pour ma rubrique d'accueil :wink:

<BOUCLE_doc_image_principale(DOCUMENTS){id_article=1}{par hasard}{0,1}>
                <img src='[(#FICHIER|image_masque{images/masque-accueil.png}|image_aplatir{jpg,000000}|extraire_attribut{src})]' height='[(#FICHIER|hauteur)]' width='[(#FICHIER|la
rgeur)]' alt='' title='' />

                <div id="col_image_desc">
                        <div><strong>#TITRE</strong></div>
                        <div>#DESCRIPTIF</div>
                        <div><b><:signature:></b></div>
                </div>
                </BOUCLE_doc_image_principale>

Dans mon cas, jepioche l'image dans l'article 1, qui est un article technique.
En supprimant le "=1" cela devrait fonctionner pour l'article courant.

Aurélien

SEB a écrit :

personne n'a d'idée là-dessus ???
siouplait ??

SEB a écrit :
  

Bonjour à tous, j'ai bien trouvé comment afficher une image aléatoire parmi toutes les images du site complet, en utilisant une boucle; maintenant ce que je souahiterai, c'est pouvoir intégrer une image aléatoire au sein d'un article SPIP! et là, je bloque... je me demandais s'il n'était pas possible d'utiliser des modèles pour cela mais je n'y suis pas parvenu... Quelqu'un a-t-il déjà essayé ce genre de chose ? est-ce possible d'après vous? avez vous des pistes ?
merci d'avance
SEB.
    
_______________________________________________
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
  

SEB a écrit :

personne n'a d'idée là-dessus ???
siouplait ??

SEB a écrit :
  
Bonjour à tous, j'ai bien trouvé comment afficher une image aléatoire 
parmi toutes les images du site complet, en utilisant une boucle; 
maintenant ce que je souahiterai, c'est pouvoir intégrer une image 
aléatoire au sein d'un article SPIP! et là, je bloque... je me 
demandais s'il n'était pas possible d'utiliser des modèles pour cela 
mais je n'y suis pas parvenu... Quelqu'un a-t-il déjà essayé ce genre 
de chose ? est-ce possible d'après vous? avez vous des pistes ?
merci d'avance
SEB.
    

tu veux intégrer cela dans ton texte d’article ou dans le squelette ? si c’est dans le squelette : tu sais déjà faire …
tu ouvre ton dist/article.html ou squelettes/article.html et tu rajoute aprés ou avant ton #TEXTE ta boucle pour ton document

oui, ça je sais faire, l’idée c’est justement d’intégrer cette image aléatoire dans le texte d’un article spip, donc indépendamment du codage du squelette…

Yoann NOGUES (zerax) a écrit :

SEB a écrit :

personne n'a d'idée là-dessus ???
siouplait ??

SEB a écrit :
  
Bonjour à tous, j'ai bien trouvé comment afficher une image aléatoire 
parmi toutes les images du site complet, en utilisant une boucle; 
maintenant ce que je souahiterai, c'est pouvoir intégrer une image 
aléatoire au sein d'un article SPIP! et là, je bloque... je me 
demandais s'il n'était pas possible d'utiliser des modèles pour cela 
mais je n'y suis pas parvenu... Quelqu'un a-t-il déjà essayé ce genre 
de chose ? est-ce possible d'après vous? avez vous des pistes ?
merci d'avance
SEB.
    

tu veux intégrer cela dans ton texte d’article ou dans le squelette ? si c’est dans le squelette : tu sais déjà faire …
tu ouvre ton dist/article.html ou squelettes/article.html et tu rajoute aprés ou avant ton #TEXTE ta boucle pour ton document

SEB <seb.arico@gmail.com> wrote:

Bonjour à tous, j'ai bien trouvé comment afficher une image aléatoire
parmi toutes les images du site complet, en utilisant une boucle;
maintenant ce que je souahiterai, c'est pouvoir intégrer une image
aléatoire au sein d'un article SPIP! et là, je bloque... je me demandais
s'il n'était pas possible d'utiliser des modèles pour cela mais je n'y
suis pas parvenu... Quelqu'un a-t-il déjà essayé ce genre de chose ?
est-ce possible d'après vous? avez vous des pistes ?
merci d'avance
SEB.

Ben si u as déjà réussis dans les squelettes c'est la bonne solution que
de faire un modèle.

1. tu met ta boucle dans un modele que tu appelles par exemple
"image_hasard.html" dans le dossier "modeles" de ton dossier
"squelettes". je suppose que ta boucle ressemble à
<BOUCLE_images (DOCUMENTS) {extension IN ...} {mode=vignette} {par
hasard} {0,1}>
        [(#FICHIER)]
</BOUCLE_images>

2. dans ton article tu appelles ce modele par la balise <image_hasard|>

(Rem ne pas oublier le pipe | pour que spip le prenne bien en compte
comme un modele
--
Dominique
http://wojylac.free.fr

merci pour ta réponse Aurélien,
en fait ma problématique est un peu différente: je voudrais pouvoir mettre ponctuellement, au sein d’un article (donc pas dans le squelette de ma page), une image aléatoire…

ceci dit, j’en profite pour te demander: à quoi sert le " |extraire_attribut{src} "que tu as ajouté dans ta boucle ?

merci et @++
SEB.

a écrit :

Dominique a écrit :

SEB <seb.arico@gmail.com> wrote:

Bonjour à tous, j'ai bien trouvé comment afficher une image aléatoire
parmi toutes les images du site complet, en utilisant une boucle; maintenant ce que je souahiterai, c'est pouvoir intégrer une image aléatoire au sein d'un article SPIP! et là, je bloque... je me demandais
s'il n'était pas possible d'utiliser des modèles pour cela mais je n'y
suis pas parvenu... Quelqu'un a-t-il déjà essayé ce genre de chose ? est-ce possible d'après vous? avez vous des pistes ?
merci d'avance
SEB.
    
Ben si u as déjà réussis dans les squelettes c'est la bonne solution que
de faire un modèle.

1. tu met ta boucle dans un modele que tu appelles par exemple
"image_hasard.html" dans le dossier "modeles" de ton dossier
"squelettes". je suppose que ta boucle ressemble à
<BOUCLE_images (DOCUMENTS) {extension IN ...} {mode=vignette} {par
hasard} {0,1}>
        [(#FICHIER)]
</BOUCLE_images>

2. dans ton article tu appelles ce modele par la balise <image_hasard|>

(Rem ne pas oublier le pipe | pour que spip le prenne bien en compte
comme un modele
  

tout simplement?
je suis bluffé...

autre question: y-a-t-il moyen d'utiliser les filtres |right ou |left ?
comment les adapter ?

merci ;o)

bonjour,

J'y avais aussi pensé pour mon site, mais le probleme c'est que jai parfois
des images tres grande , d'autres tres petites (faute d'avoir trouvé
meilleur taille sur le net)

Donc a la limite il faudrait un resize pour les trop grande mais pas les
trop petites, sachant que ma largeur d'article est actuellement limitée à
500 ...

-----Message d'origine-----
De : spip-bounces@rezo.net [mailto:spip-bounces@rezo.net] De la part de SEB
Envoyé : mardi 4 décembre 2007 17:43
À : spip@rezo.net
Objet : Re: [Spip] image aléatoire au sein d'un article ?

Dominique a écrit :

SEB <seb.arico@gmail.com> wrote:

Bonjour à tous, j'ai bien trouvé comment afficher une image aléatoire
parmi toutes les images du site complet, en utilisant une boucle;
maintenant ce que je souahiterai, c'est pouvoir intégrer une image
aléatoire au sein d'un article SPIP! et là, je bloque... je me
demandais s'il n'était pas possible d'utiliser des modèles pour cela
mais je n'y suis pas parvenu... Quelqu'un a-t-il déjà essayé ce genre de

chose ?

est-ce possible d'après vous? avez vous des pistes ?
merci d'avance
SEB.
    
Ben si u as déjà réussis dans les squelettes c'est la bonne solution
que de faire un modèle.

1. tu met ta boucle dans un modele que tu appelles par exemple
"image_hasard.html" dans le dossier "modeles" de ton dossier
"squelettes". je suppose que ta boucle ressemble à <BOUCLE_images
(DOCUMENTS) {extension IN ...} {mode=vignette} {par hasard} {0,1}>
        [(#FICHIER)]
</BOUCLE_images>

2. dans ton article tu appelles ce modele par la balise
<image_hasard|>

(Rem ne pas oublier le pipe | pour que spip le prenne bien en compte
comme un modele
  

tout simplement?
je suis bluffé...

autre question: y-a-t-il moyen d'utiliser les filtres |right ou |left ?
comment les adapter ?

merci ;o)

_______________________________________________
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

SEB <seb.arico@gmail.com> wrote:

tout simplement?
je suis bluffé...

Ben oui
je trouve que les modèles sont une vraie trouvaille et permettent de se
faire des petits outils sympa et de faciliter la vie des rédacteurs "de
base"

autre question: y-a-t-il moyen d'utiliser les filtres |right ou |left ?
comment les adapter ?

Ben dans ton modele tu vas gérer une variable align
par exemple dans ton article <image_hasard|align=left>

(je ne pense pas que cela fonctionne avec directement
<image_hasard|left> dans ce cas (mais tu peux essayer)

et dans ton modèle tu récupères #ENV{align} et là tu mets un test pour
gérer les choses

Si tu veux récupérer les styles de spip (documents, document_right, ...)
regarde comment sont faits les modèles de la dist img, doc,... pour les
questions de mise en page et de style

Une fois au point :
1. tu en fait un plugin
2. tu le proposes sur spip-contrib :-))

--
Dominique
http://wojylac.free.fr

Gaius Baltar a écrit :

bonjour,

J'y avais aussi pensé pour mon site, mais le probleme c'est que jai parfois
des images tres grande , d'autres tres petites (faute d'avoir trouvé
meilleur taille sur le net)

Donc a la limite il faudrait un resize pour les trop grande mais pas les
trop petites, sachant que ma largeur d'article est actuellement limitée à
500 ...

le filtre |image_reduire ne réduit pas si ton image est plus petite que les paramétres que tu lui passe.

Gaius Baltar <gaius.baltar@orange.fr> wrote:

Donc a la limite il faudrait un resize pour les trop grande mais pas les
trop petites, sachant que ma largeur d'article est actuellement limitée à
500 ...

image_reduire{0,500} p ar exemple fait cela très bien
[(#FICHIER|image_reduire{....})]

voir Les filtres de SPIP - SPIP

--
Dominique
http://wojylac.free.fr

Tu prends la boucle que tu as fait pour ton accueil en la mettant dans une inclure dans ta page article, comme ça tu la sors du contexte ARTICLES et ça devrait marcher. ('Cest ce que je fais pour mes fonctions présente sur toutes les pages, indépendament de l’endroit)

Ed

ps: peut-être quelqu’un a déjà répondu ou trouver mieux… Auquel cas, ce sera simplement un apport à la base de connaissance.

2007/12/4, Dominique < dwojylac@free.fr>:

Gaius Baltar <gaius.baltar@orange.fr > wrote:

Donc a la limite il faudrait un resize pour les trop grande mais pas les
trop petites, sachant que ma largeur d’article est actuellement limitée à
500 …

image_reduire{0,500} p ar exemple fait cela très bien
[(#FICHIER|image_reduire{…})]

voir http://www.spip.net/fr_article901.html#image_reduire


Dominique
http://wojylac.free.fr


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


Edouard Reinach
ereinach@gmail.com
+1 514 582 5156

War is God’s way of teaching Americans geography - Ambrose Bierce

Bon j'ai progressé un peu...
j'ai suivis vos conseils, crée un modèle avec ma boucle et repris la même structure que les modèles contenus de la dist...

Voici ce que cela donne pour le fichier de modèle:

<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>
<BOUCLE_vignetteArticle(ARTICLES){id_article=#GET{current_id_art}}{0,1}>

<span class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})][ (#ENV{class})] spip_lien_ok'[ style='float:(#ENV{align}|match{left|right});[ width:(#LOGO_DOCUMENT||largeur)px;]']><a href="[(#ENV{lien}|sinon{#URL_DOCUMENT})]"[ (#ENV{lien}|?{'',type="#MIME_TYPE"})][ title="(#TITRE|texte_backend)"]>[(#LOGO_DOCUMENT||inserer_attribut{alt,#TITRE|strlen|?{#TITRE {#TYPE_DOCUMENT},#TYPE_DOCUMENT}})]</a>
    [<span class="texte_vignette"><strong>(#_docuImg:TITRE|?{#_docuImg:TITRE," "})</strong></span>]
    [<span class="texte_vignette"><br />(#_docuImg:DESCRIPTIF|?{#_docuImg:DESCRIPTIF,""})</span>]
</span>

</BOUCLE_vignetteArticle>
</BOUCLE_docuImg>

j'ai appelé mon modèle image_aleatoire.html, mis dans un répertoire modèle, puis j'appelle mon image alétoire dans l'article SPIP avec <image_aleatoire|right> ou <image_aleatoire|left>

ET CA FONCTIONNE !!!

Le problème, (car il ya un problème...), c'est qu'il faut recalculer la page à chaque fois que l'on veut changer l'image...
Et la balise #CACHE{0} ne semble pas fonctionner sur un modèle...
et je n'ai pas envie de mettre mon moche à 0 pour tous mes articles et toutes mes rubriques....

Pour contourner cela, j'ai bidouillé un peu pour que les articles auxquels j'applique ce traitement soit appelés au sein d'un inclure avec la balise {self=#SELF} et là ça marche!!

bon ya sans doute plus simple, notamment pour cette historie de cache...
si vous avez des pistes ;o)

A+
SEB.

Dominique a écrit :

SEB <seb.arico@gmail.com> wrote:

tout simplement?
je suis bluffé...
    

Ben oui
je trouve que les modèles sont une vraie trouvaille et permettent de se
faire des petits outils sympa et de faciliter la vie des rédacteurs "de
base"

autre question: y-a-t-il moyen d'utiliser les filtres |right ou |left ?
comment les adapter ?
    
Ben dans ton modele tu vas gérer une variable align
par exemple dans ton article <image_hasard|align=left>

(je ne pense pas que cela fonctionne avec directement
<image_hasard|left> dans ce cas (mais tu peux essayer)

et dans ton modèle tu récupères #ENV{align} et là tu mets un test pour
gérer les choses

Si tu veux récupérer les styles de spip (documents, document_right, ...)
regarde comment sont faits les modèles de la dist img, doc,... pour les
questions de mise en page et de style

Une fois au point :
1. tu en fait un plugin
2. tu le proposes sur spip-contrib :-))

SEB <seb.arico@gmail.com> wrote:

j'ai appelé mon modèle image_aleatoire.html, mis dans un répertoire
modèle, puis j'appelle mon image alétoire dans l'article SPIP avec
<image_aleatoire|right> ou <image_aleatoire|left>

ET CA FONCTIONNE !!!

Super

Le problème, (car il ya un problème...), c'est qu'il faut recalculer la
page à chaque fois que l'on veut changer l'image...
Et la balise #CACHE{0} ne semble pas fonctionner sur un modèle...
et je n'ai pas envie de mettre mon moche à 0 pour tous mes articles et
toutes mes rubriques....

ben oui les modèles ne sont calculés qu'en même temps que l'article où
ils sont appelés donc effectivement pas de cache puisque tout ceci est
intégré à l'article et ne fait pas il me semble l'objet d'un petit cache
distinct

Si on laisse en l'état l'image ne change pas à chaque visite mais chaque
recalcul de la page... ce qui peut être une autre option après tout

Pour contourner cela, j'ai bidouillé un peu pour que les articles
auxquels j'applique ce traitement soit appelés au sein d'un inclure avec
la balise {self=#SELF} et là ça marche!!

Il faut effectivement que cet inclure soit dynamique
<INCLURE....>
et non statique [(#INCLURE

bon ya sans doute plus simple, notamment pour cette historie de cache...
si vous avez des pistes ;o)

Non je pense que c'est la bonne solution...

--
Dominique
http://wojylac.free.fr