API modifier : passer l'éventuelle la liste de champs fixe au pipeline pre_edition
Je pense que le problème principal est le chargement de champs extras sur l’exécution auteur_modifier($id_auteur, ['pass' => 'xxx']) : une liste de champs fixe est transmise, et champs extras ne devrait pas compléter ce tableau dans ce cas, il me semble.
Sauf que cette liste de champs de départ n’est actuellement pas communiquée au pipeline ‘pre_edition’, même si elle est bien transmise à objet_modifier_champs(). Si champs extras en avait connaissance, il pourrait dire : je n’ajoute pas automatiquement mes champs, assez logiquement.
On pourrait transmettre donc au pipeline pre_edition (dans objet_modifier_champs) :
dans [args] : 'data' => isset($options['data']) ? $options['data'] : null
Champs extras pourrait alors ne pas chercher à charger ses champs dans son pipeline pre_edition si la clé data est renseignée.
Voir spip-contrib-extensions/champs_extras_core#3 (closed) pour le descriptif complet