Je me répond à moi-même :
Voici une solution inélégante pour résoudre ce problème :
1ere étape : la définition du tableau extra que l'on vaut ajouter (pour une
table spécifique)
2eme étape : on test si le tableau extra est vide ou pas (toujours pour la
table sur laquelle l'on travail)
3eme étape :
- si c'est vide, on y ajoute notre tableau sans écraser les définitions extra
concernant les autres tables
- si c'est pas vide, on mélange les définitions (en priant pour que les noms
des champs extras ne soient pas identiques) et l'on ajoute tout cela au
global champs_extra
Je ne suis pas du tout satisfait de ce code, je suis sur qu'il doit y avoir
une solution plus logique 
//
// Definition des champs extra pour les articles openPublishing
//
// definition du tableau des extras utilisé par le plugin
$op_article = Array (
"OP_pseudo" => "ligne|brut|pseudonyme du rédacteur",
"OP_mail" => "ligne|propre|mail du rédacteur"
);
// si les extra de la table que l'on veut etendre sont vide
if (empty($GLOBALS['champs_extra']['articles'])) {
$op_extra = Array (
'articles' => $op_article
);
}
else {// si ce n'est pas vide, on merge
$merge_article = array_merge($GLOBALS['champs_extra']['articles'],
$op_article);
$op_extra = Array (
'articles' => $merge_article
);
}
$GLOBALS['champs_extra'] = array_merge ($GLOBALS['champs_extra'], $op_extra);
Le Friday 07 March 2008 11:57:17 edd, vous avez écrit :
petit probleme
le plugin openPublishing utilise maintenant les champs extra de la table
article pour y stocker diverses informations
$GLOBALS['champs_extra'] = Array (
'articles' => Array (
"OP_pseudo" => "ligne|brut|pseudonyme du
rédacteur",
"OP_mail" => "ligne|propre|mail du
rédacteur", )
);
Or si un autre plugin ou un squelette utilise lui aussi les champs extra,
la définition ci-dessus est écrasée par la nouvelle. ce qui est très
embettant car cela signifirai qu'il n'est qu'un seul plugin qui est le
droit d'utiliser les champs extra ...
existe-t'il une possibilité de de définir des champs extras dans plusieurs
plugins ?
_______________________________________________
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone