Pour utiliser les pipelines de SPIP ou d’un plugin, il faut explicitement déclarer leur utilisation dans le fichier
plugin.xml
:
<pipeline>
<nom>nom_du_pipeline</nom>
<action>nom de la fonction a charger</action>
<inclure>repertoire/fichier.php</inclure>
</pipeline>
Le paramètre
action
est optionnel, par défaut, il vaut le même nom que le pipeline. Cette déclaration indique de charger un fichier particulier au moment de l’appel du pipeline (déterminé par
inclure
) et de charger une fonction
prefixPlugin_action()
. Notons que le paramètre
action
est rarement renseigné.
On indique plusieurs pipelines en les listant de la sorte :
<pipeline>
<nom>nom_du_pipeline</nom>
<inclure>repertoire/fichier.php</inclure>
</pipeline>
<pipeline>
<nom>autre nom</nom>
<inclure>repertoire/fichier.php</inclure>
</pipeline>
Exemple
Le pipeline
insert_head ajoute du contenu dans le
<head>
des pages publiques. Le plugin « Messagerie » (ayant « messagerie » comme préfixe) s’en sert pour ajouter des styles CSS :
<pipeline>
<nom>insert_head</nom>
<inclure>messagerie_pipelines.php</inclure>
</pipeline>
Et dans le fichier
messagerie_pipelines.php
:
function messagerie_insert_head($texte){
$texte .= '<link rel="stylesheet" type="text/css" href="'.find_in_path('habillage/messagerie.css').'" media="all" />'."\n";
return $texte;
}