Problème de lien sur boucle image aléatoire

Bonjour à tous,

Je ne suis pas une bête en termes de boule.
J'ai copié et collé ceci :
<div class="hasard">
    <BOUCLE_Vignette_au_Hasard(DOCUMENTS){par hasard}{0,9}{mode = image}{extension = jpg}>
    #SET{ratio_x,#LARGEUR|div{55}}
        #SET{ratio_y,#HAUTEUR|div{55}}
        #SET{ratio,#GET{ratio_x}|<={#GET{ratio_y}}|?{#GET{ratio_x},#GET{ratio_y}}}
        [<a href="#FICHIER">(#FICHIER|image_reduire_par{#GET{ratio}}|image_recadre{60,60,center})</a>]
    </BOUCLE_Vignette_au_Hasard>
</div>
Trouvé... je ne sais plus trop où en faisant une recherche sur le thème "image aléatoire spip".
Ça marche très bien et l'effet est assez réussi mais j'ai voulu modifier le lien de façon à ce qu'en cliquant sur l'image on arrive non pas au fichier lui-même mais vers la page le contenant.
A la place de <a href"#FICHIER..." > j'ai donc mis <a href="URL_ARTICLE...> mais cela ne fonctionne pas : je ne tombe pas sur l'article. Ça recharge la page sommaire.
Quelqu'un pourrait-il m'indiquer où je me trompe.. ?
Merci à tous :slight_smile:

waloo

Waloo a écrit :

Bonjour à tous,

Je ne suis pas une bête en termes de boule.
J'ai copié et collé ceci :
<div class="hasard">
   <BOUCLE_Vignette_au_Hasard(DOCUMENTS){par hasard}{0,9}{mode = image}{extension = jpg}>
   #SET{ratio_x,#LARGEUR|div{55}}
       #SET{ratio_y,#HAUTEUR|div{55}}
       #SET{ratio,#GET{ratio_x}|<={#GET{ratio_y}}|?{#GET{ratio_x},#GET{ratio_y}}}

       [<a href="#FICHIER">(#FICHIER|image_reduire_par{#GET{ratio}}|image_recadre{60,60,center})</a>]

   </BOUCLE_Vignette_au_Hasard>
</div>
Trouvé... je ne sais plus trop où en faisant une recherche sur le thème "image aléatoire spip".
Ça marche très bien et l'effet est assez réussi mais j'ai voulu modifier le lien de façon à ce qu'en cliquant sur l'image on arrive non pas au fichier lui-même mais vers la page le contenant.
A la place de <a href"#FICHIER..." > j'ai donc mis <a href="URL_ARTICLE...> mais cela ne fonctionne pas : je ne tombe pas sur l'article. Ça recharge la page sommaire.
Quelqu'un pourrait-il m'indiquer où je me trompe.. ?
Merci à tous :slight_smile:

waloo

_______________________________________________

Bonjour,

Déjà c'est #URL_ARTICLE et pas URL_ARTICLE
Ensuite si tu n'est pas dans le contexte d'une page article, il faut une boucle article pour retrouver l'id de l'article correspondant avec ton image.

BB

Bonjour,
je me demande si vous essayez pas de ré-inventer la roue, car y a déjà un plugins qui fais ça,
Cordialement Bernard Blazin a écrit :

bobof a écrit :

Bonjour,
je me demande si vous essayez pas de ré-inventer la roue, car y a déjà un plugins qui fais ça,
Une image aléatoire en page d'accueil (ou ailleurs) - SPIP-Contrib
Cordialement

Bernard Blazin a écrit :

Waloo a écrit :

Bonjour à tous,

Je ne suis pas une bête en termes de boule.
J'ai copié et collé ceci :
<div class="hasard">
   <BOUCLE_Vignette_au_Hasard(DOCUMENTS){par hasard}{0,9}{mode = image}{extension = jpg}>
   #SET{ratio_x,#LARGEUR|div{55}}
       #SET{ratio_y,#HAUTEUR|div{55}}
       #SET{ratio,#GET{ratio_x}|<={#GET{ratio_y}}|?{#GET{ratio_x},#GET{ratio_y}}}

       [<a href="#FICHIER">(#FICHIER|image_reduire_par{#GET{ratio}}|image_recadre{60,60,center})</a>]

   </BOUCLE_Vignette_au_Hasard>
</div>
Trouvé... je ne sais plus trop où en faisant une recherche sur le thème "image aléatoire spip".
Ça marche très bien et l'effet est assez réussi mais j'ai voulu modifier le lien de façon à ce qu'en cliquant sur l'image on arrive non pas au fichier lui-même mais vers la page le contenant.
A la place de <a href"#FICHIER..." > j'ai donc mis <a href="URL_ARTICLE...> mais cela ne fonctionne pas : je ne tombe pas sur l'article. Ça recharge la page sommaire.
Quelqu'un pourrait-il m'indiquer où je me trompe.. ?
Merci à tous :slight_smile:

waloo

_______________________________________________

Bonjour,

Déjà c'est #URL_ARTICLE et pas URL_ARTICLE
Ensuite si tu n'est pas dans le contexte d'une page article, il faut une boucle article pour retrouver l'id de l'article correspondant avec ton image.

BB

_______________________________________________

Bonjour.
Merci pour la réponse.
Le problème est que ce "plugin" ne fonctionne pas dans mon squelette. Il me signale une erreur de table :
Table SQL « spip_documents_articles » inconnue
C'est pourquoi j'ai du me diriger vers une autre solution...

waloo

Bernard Blazin a écrit :

Waloo a écrit :

Bonjour à tous,

Je ne suis pas une bête en termes de boule.
J'ai copié et collé ceci :
<div class="hasard">
   <BOUCLE_Vignette_au_Hasard(DOCUMENTS){par hasard}{0,9}{mode = image}{extension = jpg}>
   #SET{ratio_x,#LARGEUR|div{55}}
       #SET{ratio_y,#HAUTEUR|div{55}}
       #SET{ratio,#GET{ratio_x}|<={#GET{ratio_y}}|?{#GET{ratio_x},#GET{ratio_y}}}

       [<a href="#FICHIER">(#FICHIER|image_reduire_par{#GET{ratio}}|image_recadre{60,60,center})</a>]

   </BOUCLE_Vignette_au_Hasard>
</div>
Trouvé... je ne sais plus trop où en faisant une recherche sur le thème "image aléatoire spip".
Ça marche très bien et l'effet est assez réussi mais j'ai voulu modifier le lien de façon à ce qu'en cliquant sur l'image on arrive non pas au fichier lui-même mais vers la page le contenant.
A la place de <a href"#FICHIER..." > j'ai donc mis <a href="URL_ARTICLE...> mais cela ne fonctionne pas : je ne tombe pas sur l'article. Ça recharge la page sommaire.
Quelqu'un pourrait-il m'indiquer où je me trompe.. ?
Merci à tous :slight_smile:

waloo

_______________________________________________

Bonjour,

Déjà c'est #URL_ARTICLE et pas URL_ARTICLE
Ensuite si tu n'est pas dans le contexte d'une page article, il faut une boucle article pour retrouver l'id de l'article correspondant avec ton image.

BB

OK merci pour le "clapsus" j'ai bien oublié le #
Bon et concrètement on fait comment pour ajouter la boucle article permettant de retrouver l'article correspondant car il y a une boucle qui tie déjà le "DOCUMENTS" ?
Désolé peut-être de poser des questions bêtes.
Mais bon c'est bien connu, les seules questions bêtes sont celles qu'on ne pose pas...

waloo

Bonjour,
ok, j'ai proposé la modif pour spip 2, mais ça n'a pas du être mis en ligne, je te passe ça,

noisette pour spip 2 (testé sur spip 2.0.8) avec quelques suppléments et conforme XHTML Strict . C’est uniquement le script de inc-photo-aleatoire.html que j’ai retouché dont voici le contenu .

|#CACHE{0}
<div>
<BOUCLE_docuImg(DOCUMENTS){doublons}{par hasard}{extension==jpg|png|gif}{0,5}>
<BOUCLE_lien(ARTICLES){id_document}>
[<a href="#URL_ARTICLE">(#_docuImg:FICHIER|image_reduire{180}|inserer_attribut{alt,#FICHIER|replace{jpg/|png/|gif/,''}|replace{.jpg|.png|.gif,''}}|inserer_attribut{title,#FICHIER|replace{jpg/|png/|gif/,''}|replace{.jpg|.png|.gif,''}})</a>]
</BOUCLE_lien>
<!-- affiche le nom du fichier de la photo sous la photo nettoyé des carractères indésirables chiffres, tirets, soulignements, répertoires, extentions de fichiers -->
<div><small>[(#FICHIER|replace{IMG/jpg/|IMG/png/|IMG/gif/,''}|replace{.jpg|.png|.gif,''}|replace{\d*,''}|replace{-,' '}|replace{_,' '})]</small></div>
</BOUCLE_docuImg>
</div>|

Quelques explications :

c'est une boucle de base, on peut trier sur les extensions de fichiers en ne sélectionnant que jpg par exemple,
en ce qui concerne le nettoyage sur les nom de fichiers c'est à adapter selon les besoins.

Voila, c’est tout. Cordialement

bobof

Waloo a écrit :

bobof a écrit :

Bonjour,
je me demande si vous essayez pas de ré-inventer la roue, car y a déjà un plugins qui fais ça,
Une image aléatoire en page d'accueil (ou ailleurs) - SPIP-Contrib
Cordialement

Bernard Blazin a écrit :

Waloo a écrit :

Bonjour à tous,

Je ne suis pas une bête en termes de boule.
J'ai copié et collé ceci :
<div class="hasard">
<BOUCLE_Vignette_au_Hasard(DOCUMENTS){par hasard}{0,9}{mode = image}{extension = jpg}>
#SET{ratio_x,#LARGEUR|div{55}}
#SET{ratio_y,#HAUTEUR|div{55}}
#SET{ratio,#GET{ratio_x}|<={#GET{ratio_y}}|?{#GET{ratio_x},#GET{ratio_y}}}

[<a href="#FICHIER">(#FICHIER|image_reduire_par{#GET{ratio}}|image_recadre{60,60,center})</a>]

</BOUCLE_Vignette_au_Hasard>
</div>
Trouvé... je ne sais plus trop où en faisant une recherche sur le thème "image aléatoire spip".
Ça marche très bien et l'effet est assez réussi mais j'ai voulu modifier le lien de façon à ce qu'en cliquant sur l'image on arrive non pas au fichier lui-même mais vers la page le contenant.
A la place de <a href"#FICHIER..." > j'ai donc mis <a href="URL_ARTICLE...> mais cela ne fonctionne pas : je ne tombe pas sur l'article. Ça recharge la page sommaire.
Quelqu'un pourrait-il m'indiquer où je me trompe.. ?
Merci à tous :slight_smile:

waloo

_______________________________________________

Bonjour,

Déjà c'est #URL_ARTICLE et pas URL_ARTICLE
Ensuite si tu n'est pas dans le contexte d'une page article, il faut une boucle article pour retrouver l'id de l'article correspondant avec ton image.

BB

_______________________________________________

Bonjour.
Merci pour la réponse.
Le problème est que ce "plugin" ne fonctionne pas dans mon squelette. Il me signale une erreur de table :
Table SQL « spip_documents_articles » inconnue
C'est pourquoi j'ai du me diriger vers une autre solution...

waloo
_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

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

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

Irc : de l'aide à toute heure : http://spip.net/irc

--

Signalez vos spams d'un simple clic. www.signal-spam.fr <https://www.signal-spam.fr/&gt;

Waloo a écrit :

Bon et concrètement on fait comment pour ajouter la boucle article permettant de retrouver l'article correspondant car il y a une boucle qui tie déjà le "DOCUMENTS" ?

un truc du genre :

<BOUCLE_Vignette_au_Hasard(DOCUMENTS_LIENS spip_documents)
           {objet = article}
           {spip_documents.mode = image}
           {spip_documents.extension = jpg}>
           {par hasard}
           {0,9}
   #SET{ratio_x, #LARGEUR|div{55}}
   #SET{ratio_y, #HAUTEUR|div{55}}
   #SET{ratio, #GET{ratio_x}|<={#GET{ratio_y}}|?{#GET{ratio_x},
       #GET{ratio_y}}}
   [<a href="#FICHIER">
(#LOGO_DOCUMENT|image_reduire_par{#GET{ratio}}|image_recadre{60,60,center})

   </a>
   #URL_ARTICLE{#ID_OBJET}]
</BOUCLE_Vignette_au_Hasard>

... mais qui me parait bien lourd.

denisb a écrit :

          {spip_documents.extension = jpg}>
          {par hasard}
          {0,9}

une erreur (bien sûr)...

<BOUCLE_Vignette_au_Hasard(DOCUMENTS_LIENS spip_documents)
           {objet = article}
           {spip_documents.mode = image}
           {spip_documents.extension = jpg}
           {par hasard}
           {0,9}>
   #SET{ratio_x, #LARGEUR|div{55}}
   #SET{ratio_y, #HAUTEUR|div{55}}
   #SET{ratio, #GET{ratio_x}|<={#GET{ratio_y}}|?{#GET{ratio_x},
       #GET{ratio_y}}}
   [<a href="#FICHIER">

(#LOGO_DOCUMENT|image_reduire_par{#GET{ratio}}|image_recadre{60,60,center})

   </a>
   #URL_ARTICLE{#ID_OBJET}]
</BOUCLE_Vignette_au_Hasard>

ce qui produit (comme demandé je crois) la requête sql :

   SELECT rand() AS alea,
          L1.largeur,
          L1.hauteur,
          documents_liens.id_document, L1.fichier,
          documents_liens.id_objet
     FROM spip_documents_liens AS `documents_liens`
          INNER JOIN spip_documents AS L1
                  ON ( L1.id_document = documents_liens.id_document )
    WHERE documents_liens.objet = 'article'
      AND L1.mode = 'image'
      AND L1.extension = 'jpg'
ORDER BY alea
    LIMIT 0,9

Merci à tous,
Moyennant quelques adaptations, je suis parvenu à obtenir ce que je voulais grâce à bobof.
Encore merci !

waloo

bobof a écrit :

Bonjour,
ok, j'ai proposé la modif pour spip 2, mais ça n'a pas du être mis en ligne, je te passe ça,

noisette pour spip 2 (testé sur spip 2.0.8) avec quelques suppléments et conforme XHTML Strict . C’est uniquement le script de inc-photo-aleatoire.html que j’ai retouché dont voici le contenu .

|#CACHE{0}
<div>
<BOUCLE_docuImg(DOCUMENTS){doublons}{par hasard}{extension==jpg|png|gif}{0,5}>
<BOUCLE_lien(ARTICLES){id_document}>
[<a href="#URL_ARTICLE">(#_docuImg:FICHIER|image_reduire{180}|inserer_attribut{alt,#FICHIER|replace{jpg/|png/|gif/,''}|replace{.jpg|.png|.gif,''}}|inserer_attribut{title,#FICHIER|replace{jpg/|png/|gif/,''}|replace{.jpg|.png|.gif,''}})</a>]

</BOUCLE_lien>
<!-- affiche le nom du fichier de la photo sous la photo nettoyé des carractères indésirables chiffres, tirets, soulignements, répertoires, extentions de fichiers -->
<div><small>[(#FICHIER|replace{IMG/jpg/|IMG/png/|IMG/gif/,''}|replace{.jpg|.png|.gif,''}|replace{\d*,''}|replace{-,' '}|replace{_,' '})]</small></div>
</BOUCLE_docuImg>
</div>|

Quelques explications :

c'est une boucle de base, on peut trier sur les extensions de fichiers en ne sélectionnant que jpg par exemple,
en ce qui concerne le nettoyage sur les nom de fichiers c'est à adapter selon les besoins.

Voila, c’est tout. Cordialement

bobof

Waloo a écrit :

bobof a écrit :

Bonjour,
je me demande si vous essayez pas de ré-inventer la roue, car y a déjà un plugins qui fais ça,
Une image aléatoire en page d'accueil (ou ailleurs) - SPIP-Contrib
Cordialement

Bernard Blazin a écrit :

Waloo a écrit :

Bonjour à tous,

Je ne suis pas une bête en termes de boule.
J'ai copié et collé ceci :
<div class="hasard">
<BOUCLE_Vignette_au_Hasard(DOCUMENTS){par hasard}{0,9}{mode = image}{extension = jpg}>
#SET{ratio_x,#LARGEUR|div{55}}
#SET{ratio_y,#HAUTEUR|div{55}}
#SET{ratio,#GET{ratio_x}|<={#GET{ratio_y}}|?{#GET{ratio_x},#GET{ratio_y}}}

[<a href="#FICHIER">(#FICHIER|image_reduire_par{#GET{ratio}}|image_recadre{60,60,center})</a>]

</BOUCLE_Vignette_au_Hasard>
</div>
Trouvé... je ne sais plus trop où en faisant une recherche sur le thème "image aléatoire spip".
Ça marche très bien et l'effet est assez réussi mais j'ai voulu modifier le lien de façon à ce qu'en cliquant sur l'image on arrive non pas au fichier lui-même mais vers la page le contenant.
A la place de <a href"#FICHIER..." > j'ai donc mis <a href="URL_ARTICLE...> mais cela ne fonctionne pas : je ne tombe pas sur l'article. Ça recharge la page sommaire.
Quelqu'un pourrait-il m'indiquer où je me trompe.. ?
Merci à tous :slight_smile:

waloo

_______________________________________________

Bonjour,

Déjà c'est #URL_ARTICLE et pas URL_ARTICLE
Ensuite si tu n'est pas dans le contexte d'une page article, il faut une boucle article pour retrouver l'id de l'article correspondant avec ton image.

BB

_______________________________________________

Bonjour.
Merci pour la réponse.
Le problème est que ce "plugin" ne fonctionne pas dans mon squelette. Il me signale une erreur de table :
Table SQL « spip_documents_articles » inconnue
C'est pourquoi j'ai du me diriger vers une autre solution...

waloo
_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

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

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

Irc : de l'aide à toute heure : http://spip.net/irc