> Contribution Spip > Plugins Spip > Création d’un plugin Spip : Etape numero 2

Nous voici maintenant dans l’étape numéro 2 de la création d’un plugin pour Spip.

Dans cet article, nous allons voir qu’est ce qu’un pipeline, comment fonctionne-t-il et quand l’utiliser.

Un pipeline se définit dans le fichier plugin.xml du plugin, et est un point d’entrée dans le labyrinthe de code de Spip. Les développeurs de Spip ont choisi de créer ces points d’entrées, pour que le développeur de plugins n’ait pas à aller gratter partout. Ces points d’entrées permettent d’insérer du code, des fonctions à des endroits précis.

Il se définit comme cela :

<pipeline>

<nom>point_entree</nom>

<action>fonction</action>

<inclure>fichier.php</inclure>

</pipeline>

<pipeline> : est une balise qui contient elle-même les 3 balises suivantes et dont on se sert pour insérer du code php dans l’un des points d’entrée de spip , par exemple, pour ajouter un élément graphique dans l’interface privée, ou un traitement du texte via l’application d’un raccourci.

<nom> : contient le nom du point d’entrée au niveau duquel le plugin agira.

<action> : contient le nom de la fonction (sans son préfixe !)

<inclure> : contient le nom du fichier dans lequel sera défini la fonction qui devra, elle, avoir strictement pour nom : préfixe_action.

En fait, la fonction php appelée par le pipeline, va recevoir comme argument un flux. Elle peut suivant les besoins le traiter, y ajouter des informations et le renvoyer modifié.

Dans la suite de cet article, je vais reprendre un tableau trouvé sur le site doc.spip.org

NomCatégorieRôle
affichage_final Site Public effectuer des calculs supplémentaires sur le contenu de la page calculée, juste avant son affichage. Hors cache, donc.
affiche_droite Espace privé
affiche_gauche Espace privé
affiche_milieu Espace privé
ajouter_boutons Espace privé Ce sont les boutons qui sont tout en haut du site, (A suivre, édition, forum, ...)
ajouter_onglets Espace privé Ce sont les sous menus des boutons, par exemple tous vos articles et mots clés pour le bouton édition
body_prive Espace privé
exec_init Espace privé
header_prive Espace privé ajoute une ou des lignes de votre choix à l’intérieur de la balise html head des pages de l’espace privé
insert_head Site Public
nettoyer_raccourcis_typo Texte traiter une chaine avant d’être envoyé à la fonction couper() ???
pre_enregistre_contenu Tache de fond
pre_indexation Tache de fond
pre_propre Typographie
pre_syndication Tache de fond
pre_typo Typographie
post_propre Typographie
post_syndication Tache de fond
post_typo Typographie
rendu_evenement  ?
taches_generales_cron Tache de fond
traiter_raccourci_lien Texte
  • Les points d’entrées de Typographie
    • Ce sont les plus simples à mettre en œuvre. Ils sont les successeurs des fonctions avant_propre(), apres_typo() etc...
  • Les points d’entrées de Tache de fond
    • Description, conditions particulières.
  • Les points d’entrées du Site Public
    • Description, conditions particulières.
  • Les points d’entrées de l’Espace privé
    • Description, conditions particulières.

Haut de pageremonter en haut de page

6
Janv

Retrouvez Creamama sur les réseaux suivants

Les recherches fréquentes

Infos