test sur logo distant absent

Bonjour,

j’ai ce code pour afficher des logos distants :
[(#VAL{[(#URL_SITE_SPIP|replace{site1,site2})]/IMG/arton#ID_ARTICLE.jpg}|copie_locale|image_reduire{50,0})]

S’il n’y a pas de logo, une image lien brisé s’affiche : <img src="https://bianco.ficedl.info/IMG/distant/html/arton6474jpgb2b4.html?1624802583" style="max-width: 50px; max-height: 10000px;">
En fait je souhaiterais que rien ne s’affiche dans ce cas mais je ne trouve pas le test qui convient

Claude

Bizarre, image_reduire ne devrait rien produire si l’URL référencée ne correspond pas à une image, et c’est bien le cas ici puisque c’est du html.

Peut-être essayer avec balise_img en amont ?

#SET{logo_distant,#VAL{#URL_SITE_SPIP|replace{site1,site2}}|concat{/IMG/arton,#ID_ARTICLE,.jpg}|copie_locale}
[(#GET{logo_distant}|balise_img|image_reduire{50})]

Sinon au pire des cas, un test sur l’extension pour exclure le html :

#SET{logo_distant,#VAL{#URL_SITE_SPIP|replace{site1,site2}}|concat{/IMG/arton,#ID_ARTICLE,.jpg}|copie_locale}
[(#SET{logo_distant}|pathinfo{#EVAL{PATHINFO_EXTENSION}}|!={html}|oui)
    [(#GET{logo_distant}|image_reduire{50})]
]

Mais bon, ce code ne fonctionnera plus avec Spip 4, c’est fini les artonxxx.jpg et cie.
Peut-être faudrait-il en profiter pour utiliser une solution plus sûre, une image référencée en tant que document distant par exemple.

bonjour

Le 12 juil. 2021 à 22:52, tcharlss via Discuter de SPIP <noreply@discuter.spip.net> a écrit :

Bizarre, image_reduire ne devrait rien produire si l’URL référencée ne correspond pas à une image, et c’est bien le cas ici puisque c’est du html.

Peut-être essayer avec balise_img en amont ?

#SET{logo_distant,#VAL{#URL_SITE_SPIP|replace{site1,site2}}|concat{/IMG/arton,#ID_ARTICLE,.jpg}|copie_locale}
[(#GET{logo_distant}|balise_img|image_reduire{50})]

merci, c’est impeccable

Sinon au pire des cas, un test sur l’extension pour exclure le html :

#SET{logo_distant,#VAL{#URL_SITE_SPIP|replace{site1,site2}}|concat{/IMG/arton,#ID_ARTICLE,.jpg}|copie_locale}
[(#SET{logo_distant}|pathinfo{#EVAL{PATHINFO_EXTENSION}}|!={html}|oui)
    [(#GET{logo_distant}|image_reduire{50})]
]

Mais bon, ce code ne fonctionnera plus avec Spip 4, c’est fini les artonxxx.jpg et cie.
Peut-être faudrait-il en profiter pour utiliser une solution plus sûre, une image référencée en tant que document distant par exemple.

Oui, c’est ce qui m’inquiète un peu. J’ai plusieurs sites où c’est le logo qui est la base, les champs articles n’étant là que pour décrire et indexer ce dernier.
J’hésite donc à passer en spip 4 pour ceux-là, mais il faudra bien un jour.

Claude