Version 3 — Mars 2014 — YannX
Utiliser Utiliser des pipelines pour surcharger un formulaire de l’espace privé SPIP 3.
L’interface privée de SPIP 3 est complètement écrit en formulaires CVT avec une topologie Z : cela rend facile à un webmestre de personnaliser ses écrans privés, mais au risque de perdre les éventuelles améliorations apparaissant dans de nouvelles versions.
Une solution plus propre serait d’utiliser des pipelines spécialisés : voyons la démarche de mise en place à partir d’un exemple.
Le besoin s’est fait jour sur l’utilisation du plugin Mes Préférences, qui posait un problème de fonctionnement sur son design « Elastic » ; et la référence étudiée s’appuie sur le plugin Polices Privées
Grace au système des formulaires CVT, il est facile de personnaliser des formulaires dans l’’espace public, et dans l’espace privé : dans ce dernier cas, il suffit de créer un sous-dossier < code >. recharger /prive/formulaires/ dans votre répertoire de squelettes, et d’y coller des copies des deux fichiers ( configurer_preferences.
html et configurer_preferences.
php depuis leur dossier d’origine .
/prive/formulaires/ de la racine de SPIP). Le sytème de surcharge de chemin de SPIP va donc donner la pré-éminence à vos nouvelles copies (chargées dans notre cas depuis [.
/plugins/mes_preferences/privés/formulaires/->http://zone.spip.org/trac/spip-zone/browser/_plugins_/mes_preferences/trunk/formulaires].
Notez bien que dans ce cas, on annule et remplace les fichiers d’origine !
Ce n’est pas très pérenne [1].
Une solution propre consiste à rajouter par pipelines le bloc de code correspondant aux champs supplémentaires voulus : comment ce fait-se ?
Les plugins savent facilement activer des pipelines, identifiés par leur nom :
le terme de pipeline désigne un pré/ou/post-traitement (une fonction php) appliqué automatiquement par le compilateur SPIP au squelette résultant, ici au HTML généré par un #FORMULAIRE_..
; il faut différentier dans cette interprétation :
- le point d’entrée défini dans le core de SPIP par ses développeurs,
(voir la liste , issue du code de pipelines existants. )
- la fonction utilisateur activant ce traitement pour un cas d’usage
La déclaration des pipelines activés s’inscrit dans paquet.xml en SPIP 3 :
lugins