Bonjour,
je voudrais pouvoir ajouter, à partir de la rédaction d’un article, un filtre permettant de modifier le modèle d’une image, par exemple en injectant une classe CSS supplémentaire quelque part. Il y a des choses floues dans le fonctionnement de SPIP, je m’explique :
- j’ai vu qu’avec « mes_fonctions.php » on pouvait créer des filtres. J’ai repris l’exemple ici :
https://programmer.spip.net/Declarer-des-fonctions
Lorsque je l’applique dans un squelette, par exemple sur le modèle « image » :
[(#MODELE{image}|hello_world{ajouter du texte})]
je vois bien le texte s’ajouter.
En revanche, dans le contexte d’un article :
<image12|hello_world=ajouter du texte>
ne fonctionne pas.
Donc je me demandais si on pouvait se permettre de surcharger les modèles SPIP de base pour leur ajouter des fonctionnalités, et comment cela se passe si plusieurs packages font ce genre de surcharge ? Mon objectif est d’ajouter simplement une classe CSS supplémentaire quelque part. J’ai vu qu’il y avait des choses comme « inserer_attribut » mais de ce que j’ai pu tester, inserer_attribut appliqué à une «entrée » class » remplace le contenu de « class » par ce que l’on y met, or je voudrais que les attributs déjà existants y perdurent. Faire cela au niveau de la rédaction d’un article est un peu lourd, j’aurais aimé pouvoir écrire un filtre « ajouter_style » par exemple qui ferait un appel bien senti genre extraire l’attribut et le concaténer avec ce qui est nouveau.
J’aimerais votre avis sur la solution la plus propre à ce problème. Je peux toujours créer un nouveau modèle avec un nouveau nom mais ca me semble dommage.
Merci,
Mikhaël