[spip-dev] Pipeline pre_compilation_du_fond

Avec la squeletisation du privé, c'est cool, on peut bien plus facilement qu'avant modifier les pages, en particulier les formulaires.

Mais je fais face à un problème récurent : autant pour un site précis, ça ne pose strictement aucun problème du surcharger, par exemple le formulaire d'édition d'article, et de le modifier de temps en temps si l'original subit des modifs ; autant pour un plugin qui peut être installer par plein de gens, ça devient beaucoup plus problématique.

Par exemple, dans un plugin, je tente de rajouter un champ aux articles. C'est fait dans la base quand on l'installe, puis il faut que le formulaire corresponde.

Le seul moyen pérenne pour l'instant (càd sans surcharger tout le squelette du formulaire), c'est de s'inscrire dans "afficher_milieu" auquel est envoyé *le résultat* du squelette de formulaire.
Ça marche plutôt bien MAIS évidement je ne profite pas de CVT, des variables d'erreurs, etc, puisque j'ajoute mon <li><input /> APRES tout ça.

M'est donc venue une idée possible, qui ne serait pas forcément beaucoup utilisée, mais qui a mon avis peut être vraiment utile. Peut-on imaginer un pipeline de pré-compilation, qui enverrait le contenu du fichier squelette, avec en paramètre le fond qui avait été demandé, ce JUSTE AVANT de compiler le fichier du fond ?

Je schématise car je ne connais pas le code, mais cela donnerait :

AVANT :

Par exemple, dans un plugin, je tente de rajouter un champ aux articles.
C'est fait dans la base quand on l'installe, puis il faut que le formulaire
corresponde.

C'est l'objectif du plugin Extras2

-- Fil

Fil a écrit :

Par exemple, dans un plugin, je tente de rajouter un champ aux articles.
C'est fait dans la base quand on l'installe, puis il faut que le formulaire
corresponde.

C'est l'objectif du plugin Extras2

-- Fil

Oui je me souviens de ce plugin très intéressant.
Mais là mon but c'était de pouvoir ajouter un champ *où je veux* dans le formulaire d'édition d'article (pas un placement automatique), et en plus, en remplacement d'un autre. Donc génériquement, c'est vraiment de la modif de squelette de base.

Dans mon cas, pour le plugin Extras2, c'est intéressant de pouvoir ajouter des champs à un formulaire existant déjà, seulement si ce formulaire est construit dynamiquement, par exemple en parsant un tableau de conf qui dirait "position 1 : tel champ, telles options (obligatoire, etc), position 2 : ...", et qu'on puisse modifier ce tableau par pipeline avant qu'il soit parsé.

M'enfin on en est pas encore là... :slight_smile:

D'où le pipeline que je proposais, qui d'ailleurs pourrait servir à d'autres choses aussi, je suppose.

il ya deja tous les pipelines qu'il faut pour ajouter des champs dans un formulaire cvt,
et des pipe pour charger, verifier et traiter.
Regarde le plugin champs_extra (pas extra2) qui fait ca sans surcharge
Cédric

cedric.morin@yterium.com a écrit :

il ya deja tous les pipelines qu'il faut pour ajouter des champs dans un formulaire cvt,
et des pipe pour charger, verifier et traiter.
Regarde le plugin champs_extra (pas extra2) qui fait ca sans surcharge
Cédric

Oh my God !!
Pour CVT ça allait, ce que j'avais manqué c'était "editer_contenu_objet", bien sûr...

On voit là qu'il faut vraiment remplir cette page (que j'ai remise au propre et avec TOUS les pipelines actuels) :
http://doc.spip.org/@Les-points-d-entree-pipelines#liste-points-entree

Pour les anciens, ça se fera petit à petit je pense, mais pour tous les nouveaux pipelines, ça serait cool que dès qu'un codeur en rajoute un, il écrive un minimum de doc sur cette même page.
Essentiellement : où se trouve ce pipeline, à quoi il sert, et quels sont les paramètres importants du $flux.

Faudrait que je formalise une présentation pour ça, histoire qu'il n'y ait plus qu'à remplir.

Merci beaucoup !

Faudrait que je formalise une présentation pour ça, histoire qu'il n'y ait
plus qu'à remplir.

gogogo

les skel sont sur la zone, c'est un wiki, demande si tu as besoin d'etre admin