La balise #PIPELINE, qui existe depuis plus d’un an est restée plutôt discrète. Elle permet, d’insérer du code à-peu-près là où on le souhaite dans un squelette.
Les pipelines
Tout d’abord il est bon de se remémorer le principe des pipelines. Il a été introduit un système de points d’entrée, aussi appelé « pipeline », permettant de glisser un calcul supplémentaire, ou une information différente à l’endroit désiré dans le code de SPIP.
Le point d’entrée est donc le moyen d’indiquer à SPIP quel est ce calcul et où il entre en ligne de compte [1]
Voir : http://doc.spip.org/@Tuto-Se-servir...
Il existe donc une liste de points d’entrées prédéfinis, mais il peut arriver que l’on ait besoin d’en créer de supplémentaires.
Voir : http://www.spip-blog.net/Balise-PIP...
Un exemple d’implémentation
Je vous présente un exemple d’implémentation d’un nouveau pipeline. Celui-ci permettra d’afficher la boussole de SPIP, cf. http://www.spip-contrib.net
Pour plus d’explications sur la création d’un plugin, cf. : Création d’un plugin
le fichier plugin.xml à créer
- <plugin>
- <nom>Boussole</nom>
- <auteur></auteur>
- <version>0.2</version>
- <etat>dev</etat>
- <description>
- Rajoute la boussole Spip dans le code de Spip
- </description> <prefix>boussole</prefix>
- <pipeline>
- <nom>insert_head</nom>
- <action>insert_head</action>
- <inclure>boussole.php</inclure>
- </pipeline>
- <pipeline>
- <nom>insert_boussole</nom>
- <action>insert_boussole</action>
- <inclure>boussole.php</inclure>
- </pipeline>
- </plugin>
Il est fait usage ici de deux pipelines :
# insert_head : qui permet de rajouter du code entre les balises html <head> et </head> qui ici appellera le fichier css nécessaire.
# insert_boussole : ce pipeline est donc créé par ce plugin. Il permettra d’insérer dans le code de SPIP le code permettant d’afficher la boussole.
Dans le fichier boussole.php, on trouvera le code suivant :
function boussole_insert_boussole($flux)
Le nom de la fonction est composé ainsi :
boussole, qui est le préfixe du plugin
insert_boussole, le nom du nouveau pipeline
Il ne reste maintenant qu’à rajouter l’appel de ce nouveau pipeline dans le code de SPIP à l’endroit où l’on désire. Pour cela il suffit de rajouter #PIPELINE{insert_boussole} insert_boussole étant le nom du nouveau pipeline.
Le plugin : http://spip.jermer.fr/?La-boussole-...

