Un passage global sur les occurrences de code spécifiant en dur l'une ou l'autre des extension de fichiers images relève de grandes disparités non documentées.
La regexp ([^.]\bgif\b.*\bpng\b|\bpng\b.*[^.]\bgif\b) fournit une liste des usages de gif et png dans la même ligne (il semble y avoir d'autres cas à traiter).
Dans le plugins-dist/medias il y a, en plus de dissocier_documents cité plus haut :
A priori il faut corriger tous ces cas. Et a priori on peut dans tous ces cas utiliser 'media' ou #MEDIA pour corriger.
Et il faudrait voir aussi dans les autres parties de la dist.
Mmmh oui, pourquoi utiliser à plein d'endroits une liste d'extensions, alors qu'on a le type de média depuis toujours ?
Il me semble que les seuls cas où les extensions sont pertinentes, c'est quand c'est un test pour faire des traitements d'images ensuite (recadre etc), car là il faut que ce soit des formats précis reconnus par GD2. Mais tous les autres cas devraient être avec le type général de média à priori.
Là dedans il y a notamment du code mort car les images en mode image ou document ça n'existe plus
Ça, ça se discute...
Le code avec un define pour est là.
C'est super pratique pour distinguer ce qui est en galerie en bas de la page (Portfolio), et ce qui est éventuellement des illustrations non utilisées dans l'article, mais disponibles pour plus tard.
Je sais bien qu'on a le critère {!vu}, mais il est moins clair car plus difficilement explicable et consultable dans l'admin.
Plus le temps passe, plus je trouve que cette évolution était une erreur.
Erreur basée sur la différence de comportement de <docNNN> selon que c'était ou non dans le portfolio.
Alors qu'il y a l'autre usage de distinguer contenu et gallerie.
Je trouve qu'il manque surtout une catégorisation "image web" globale.
Pourquoi pas la gérer dans le core, ou au pire dans médias ?
Chaque plugin gère ça à sa sauce, avec une liste d'extensions ou de mimetypes plus ou moins heureuses, et quand il y a un ajout, c'est à patcher un peu partout.
Je sais bien qu'on en ajoute pas tous les jours, mais si on ajoute l'avif ou le jpeg2000 ou je sais pas quoi un de ces jours il faudra encore repasser partout.
(oh, et regardez qui vient troller : « Coucou, je suis le svg, moi aussi je suis une image web :p »)
Je sais que ça peut paraître exotique mais media='image' ça s'applique aussi aux .tiff, .bmp et autres joyeusetés, et que les rédacteurs et trices sont très créatifs à ce niveau là.
(sans parler des jpeg en quadrichromie ou des exif qui inversent les couleurs mais là c'est un cas désespéré)
qui in fine est la plupart du temps ce qu'on cherche (et on devrait l'encapsuler dans une fonction adhoc pour éviter de continuer à utiliser une globale, et l'utiliser en entrée de _image_extensions_acceptees_en_entree() au lieu du tableau par défaut
Ouais j'allais dire un peu la même chose : ya plusieurs (sous) groupes
toutes les images
les images web = affichables en HTML (ce qui comprend AVIF, WEBP et SVG)
les images transformables par la lib GD2… (pas SVG, mais AVIF oui à partir de PHP 8.1 par ex)
Vu que dans le lot ya le sous-groupe GD, ça concerne directement le core (et un autre plugin dist) donc à priori les fonctions d'API devraient être dans le core plutôt que dans Médias. Et pour pas disperser, si celle pour GD est déjà dans le core, alors si yen a une autre ajoutée pour "les images web affichables en HTML", c'est mieux au même endroit, par cohérence. Et si on peut en plus uniformiser les noms de fonctions… (quitte à mapper l'ancienne sur une nouvelle)