Créer un nouveau pipeline, c’est déclarer son existence pour le faire connaître à SPIP, et appeler ce pipeline en un endroit du code.
Déclaration
Le plus simple est de déclarer un nouveau pipeline dans le fichier paquet.xml
d’un plugin, en remplissant l’attribut action vide :
<pipeline nom="nouveau_pipeline" action='' />
L’autre possibilité est de le déclarer dans un fichier d’option en remplissant le tableau global spip_pipeline
de la sorte :
$GLOBALS['spip_pipeline']['nouveau_pipeline'] = '';
Utilisation
Ensuite, il faut l’appeler, soit dans un squelette soit dans un fichier PHP. La balise #PIPELINE
ou la fonction PHP pipeline()
utilisent les mêmes arguments :
- Dans un squelettes :
#PIPELINE{nouveau_pipeline,contenu au demarrage}
- Dans un source php :
$data = pipeline('nouveau_pipeline',"contenu au demarrage");
.
Dans les deux écritures, l’argument initial « contenu au demarrage » est envoyé dans le pipeline. L’exécution passe alors successivement par les fonctions implémentant ce pipeline dans tous les plugins qui en ont déclaré l’utilisation. Chaque fonction reçoit l’argument et peut le modifier. Le résultat final de cette succession d’appels est renvoyé au contexte appelant.