Utiliser les pipelines

Pour utiliser les pipelines de SPIP ou d’un plugin, il faut explicitement déclarer leur utilisation dans le fichier paquet.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;
}

Auteur Matthieu Marcillaud Publié le : Mis à jour : 12/03/23

Traductions : English, français, Nederlands