filtre largeur sur doc ne fonctionne pas

Bonjour

Sur des sites en mutualisation, le filtre largeur sur un doc ne fonctionne pas.
Un exemple avec
<doc831|center|largeur=150>
dans cet article.

Une idée du pourquoi ?

Comme on n’a pas accès à https://collectif-jeandeneyman.fr/local/config.txt il nous faudrait des infos comme la version de SPIP au minimum.

De plus, le problème semble concerner escal, et il y a un espace dédié à celui-ci cf Escal - Discuter de SPIP

Non Escal n’est pas concerné car sur un autre site hébergé ailleurs et pas dans une mutu, le problème ne se pose pas. C’est donc sans doute lié à la mutu.
Les sites concernés sont en spip 4.3.6 et php 8.4.2

Les aides au débuggage de squelettes - SPIP var_mode=inclure te permettra de vérifier que c’est bien le modèle doc de la dist qui est appelé, et var_mode=debug qu’il reçoit bien ton paramètre largeur. Si c’est bien le cas, on pourra envisager que le bug est dans SPIP et enquêter.

C’est bien plugins-dist/medias/modeles/image.html qui est appelé et il reçoit bien le paramètre largeur.

.

Je viens de tester sur une 4.3.6 up en git, sans aucun plugin et <doc1|center|largeur=150> fonctionne très bien.

Oui je sais, comme je l’ai dit, je n’ai pas de souci sur un autre site. Je pense que ça vient de la mutu mais je n’arrive pas à trouver où ça coince.

Peut être les css du squelette empêchent-il les css du modele de s’exprimer ?

Je ne pense pas car c’est le même squelette dans les 2 cas.

Tu peux le (sa)voir précisément en examinant les html et autres fichiers produits.
C’est un bon début pour comprendre le problème.

Mais je ne sais pas quoi chercher …

Dans ton navigateur, CTRL+SHIFT+I te permet de voir le html et les css produites.
Le problème vient il du html ?
Des css ?
De quoi précisément ?

Oui l’inspecteur, je m’en sers souvent mais que chercher.
Finalement j’ai fait des tests car je reproduisais en local et je viens de voir que si je désactive Escal, que je recalcule la page et je réactive Escal, l’image est bien réduite. Enfin ça a fonctionné sur 2 sites locaux mais pas sur le 3e.
Bref je suis bien perdu …

Quand ça fonctionne le code produit est

<a href="IMG/jpg/image_test.jpg" class="spip_doc_lien mediabox lity-enabled hasbox" type="image/jpeg" data-box-type="image" data-href-popin="IMG/jpg/image_test.jpg">
<img src="local/cache-vignettes/L200xH134/image_test-31531-2180d.jpg?1739556527" alt="" width="200" height="134"></a><img src="local/cache-vignettes/L200xH134/image_test-31531-2180d.jpg?1739556527" alt="" width="200" height="134">

et quand ça ne fonctionne pas le code produit est

<a href="IMG/jpg/image_test.jpg" class="spip_doc_lien mediabox lity-enabled hasbox" type="image/jpeg" data-box-type="image">
<img src="IMG/jpg/image_test.jpg?1739556762" alt="" width="400" height="268"></a>

Edit : GD2 n’était pas activé sur le 2e. Une fois activé et la génération de vignette cochée, la désinstallation-recalcul-réinstallation donne un résultat correct.

Reste à comprendre ce qui empêche la génération des vignettes avant désactivation.

Une piste ?

Edit 2 : je n’avais pas ce souci avec la version 4.2.16

Le passage en spip 4.4 a résolu le problème.
Merci de votre aide.

Edit : Ah ben non, le problème persiste en fait.

Bon j’ai vraiment un problème avec mon plugin Escal à priori à partir de spip 4.3
Le filtre |largeur ne fonctionne que si je désactive le plugin, recalcule la page et réactive la page.
A noter qu’une fois une valeur de largeur a été prise en compte, cette valeur fonctionne pour d’autres images. Mais dès qu’on veut utiliser une nouvelle valeur de largeur, il faut refaire la la manip.

Une idée ?

Bon, j’ai fait quelques tests sur un spip 4.4.2 avec juste
<docXX|largeur=250>
dans le texte d’un article et donc :
[(#TEXTE|image_reduire{400,0})]
prend bien en compte le image_reduire mais pas le largeur=250
[(#TEXTE)]
prend bien en compte le largeur=250

Il y aurait donc conflit entre les 2 filtres ?

Précision : le filtre largeur n’est pas pris en compte dans l’espace privé. Normal ou pas ?