Bon, je suis sur un 2.0.5, mais la problématique avec une 2.0.8 est la même. J’utilise le plugin Champs Extras (indispensable depuis la version 2 de spip) v.1.0[25998] stable. Tu le trouveras ici : http://www.spip-contrib.net/Champs-Extra,2939
La différence avec le plugin Champs Extra 2 est qu’il n’y a pas d’interface de construction de nouveaux champs (je ne l’ai pas encore testé). Mais, à terme, le résultat devrait être le même, je pense.
Donc j’ai créé mon champ extra en utilisant le fichier mes_options.php qui a été ajouté au répertoire /config. Bien sûr, mon exemple #SESSION{college} est un exemple, correspondant à mon besoin propre ! :-). Je te refais un exemple ci-dessous avec ton besoin, en espérant avoir bien compris ce que tu souhaites.
Je ne comprends pas : #SESSION_SET{college(#EXTRA|college)}
#SESSION_SET{clé, valeur} est une balise de spip qui permet de mettre dans la session une valeur retenue dans clé … très pratique …
je pense tout d’abord qu’il manque une virgule : #SESSION_SET{clé, valeur) ?
Oui, bien sûr, excuses …
je ne vois pas comment je peux lire mon champ niveau avec (#EXTRA|college) ? (#EXTRA|niveau) me retourne une erreur de filtre
Maintenant, voilà comment j’ajoute mes champs extra (ce qui n’est bien sûr pas limité à la table spip_auteurs), dans le fichier mes_options.php :
<?php
// -------------- Définition des champs extra dans la table spip_auteurs ----------
$GLOBALS['champs_extra'] = Array ('auteurs' => Array (
'id_salarie' => 'propre|Numéro du salarié',
'college' => 'propre|Collège',
'adr1' => 'propre|Adresse1',
'adr2' => 'propre|Adresse2',
'adr3' => 'propre|Adresse3',
'cp' => 'propre|Code postal',
'ville' => 'propre|Ville',
'mel' => 'propre|Email'
));
?>
En ce qui te concerne, pour n’avoir que le champ niveau :
<?php
// -------------- Définition des champs extra niveau dans la table spip_auteurs ----------
$GLOBALS['champs_extra'] = Array ('auteurs' => Array (
'niveau' => 'propre|Niveau'
));
?>
Le code ci-dessus te permettra de voir un champ supplémentaire dans ta fiche auteur, intitulé Niveau … à remplir par ce que tu veux, bien sûr.
Entretemps, j’ai installé Champs Extra 2 sur un site pour voir … j’ai créé un champ extra appelé niveau, dans la table auteurs … Pour récupérer la valeur, voilà ce que j’ai fait :
Dans la page sommaire.html, tout en haut, avant même le DOCTYPE, j’ai mis la boucle ci-dessous
<BOUCLE_test(AUTEURS){id_auteur=1}>
#SESSION_SET{niveau,#NIVEAU}
</BOUCLE_test>
Ensuite, dans n’importe quelle autre page, pour afficher le contenu de ce champ, tu mets [(#SESSION{niveau})] et ça marche nickel !! Ainsi tu n’as pas besoin de faire toute la manip que je t’ai indiquée plus haut.
Par contre, ce plugin est indiqué comme « en test », aussi, tu pourrais avoir quelques autres surprises …
Voilà, en espérant que mes remarques t’éclairent un peu …
Bon courage.
Marc
P.