[(#BALISE|filtre)]
[(#BALISE|filtre{argument2, argument3, ...})]
Syntaxe des filtres
Les filtres s’appliquent sur les balises en utilisant le caractère « | » (pipe). En pratique, ils correspondent à l’appel d’une fonction PHP existante ou déclarée dans SPIP.
Lorsqu’un filtre « x » est demandé, SPIP cherche une fonction nommée « filtre_x ». Si elle n’existe pas, il cherche « filtre_x_dist », puis « x ». Il exécute alors la fonction qu’il a trouvée avec les arguments transmis. Il est important de comprendre que le premier argument transmis au filtre (à la fonction PHP donc) est le résultat de l’élément à gauche du filtre.
Exemple
Insérer un élémenttitle
sur un lien. Pour cela, on utilise les filtres |couper
, qui permet de couper un texte à la taille voulue, et |attribut_html
, qui permet d’échapper les apostrophes qui pourraient gêner le code HTML généré (exemple : title='à tire d'ailes'
poserait problème à cause de cette apostrophe.).
Le filtre |couper
s’applique sur le résultat de la balise #TITRE
, le filtre |attribut_html
sur le résultat du filtre |couper
. On peut donc chaîner les filtres.
<a href="#URL_ARTICLE"[ title="(#TITRE|couper{80}|attribut_html)"]>Article suivant</a>
Auteur Publié le : 22/12/08 Mis à jour : 27/01/10
Traductions : English, français, Nederlands