Je découvre, parmi les saisies fournies par le plugin du même nom, une sympa pour choisir un article. Mais je ne comprends pas pourquoi ça ne retourne pas le id_article choisi… https://contrib.spip.net/Comment-declarer-un-mod
ele-pour-le-plugin-Inserer#forum502935 Comment obtenir juste l’id ; et pour ma culture, où puis-je voir l’usage du result ?
il faut passer par la fonction picker_selected qui retourne un tableau objet|id_objet par exemple si dans un plugin la configuration propose un sélecteur de rubriques nommé « accueil », ensuite dans le squelette on peut récupérer la sélection avec : {id_rubrique IN #CONFIG{monplugin/accueil}|picker_selected{rubrique}} tu trouves ça dans ecrire/inc/filtres_selecteur_generique.php
Le 05/11/2019 à 21:02, chankalan@choc0.net a écrit :
Le 05/11/2019 à 20:46, Gildas Cotomale a écrit :
Je découvre, parmi les saisies fournies par le plugin du même nom, une sympa pour choisir un article. Mais je ne comprends pas pourquoi ça ne retourne pas le id_article choisi... https://contrib.spip.net/Comment-declarer-un-mod
ele-pour-le-plugin-Inserer#forum502935 Comment obtenir juste l'id ; et pour ma culture, où puis-je voir l'usage du result ?
il faut passer par la fonction picker_selected qui retourne un tableau objet|id_objet
par exemple si dans un plugin la configuration propose un sélecteur de rubriques nommé "accueil", ensuite dans le squelette on peut récupérer la sélection avec :
{id_rubrique IN #CONFIG{monplugin/accueil}|picker_selected{rubrique}}
tu trouves ça dans ecrire/inc/filtres_selecteur_generique.php
Ah mais merci
Je ne vous raconte pas les stratagèmes peu glorieux à base de |replace que j'avais mis en place pour y arriver sans cette info !
Le 05/11/2019 à 21:02, chankalan@choc0.net a écrit :
il faut passer par la fonction picker_selected qui retourne un tableau objet|id_objet
par exemple si dans un plugin la configuration propose un sélecteur de rubriques nommé "accueil", ensuite dans le squelette on peut récupérer la sélection avec :
{id_rubrique IN #CONFIG{monplugin/accueil}|picker_selected{rubrique}}
tu trouves ça dans ecrire/inc/filtres_selecteur_generique.php
Le 05/11/2019 à 21:02, chankalan@choc0.net a écrit :
il faut passer par la fonction picker_selected qui retourne un tableau objet|id_objet
par exemple si dans un plugin la configuration propose un sélecteur de rubriques nommé "accueil", ensuite dans le squelette on peut récupérer la sélection avec :
{id_rubrique IN #CONFIG{monplugin/accueil}|picker_selected{rubrique}}
tu trouves ça dans ecrire/inc/filtres_selecteur_generique.php
Sur la base de cet exemple j'ai commencé une doc pour picker_selected : SPIP
L'intégration de picker_selected est mentionnée dans la release log de la 3.0.17
mais j'ai rien trouvé pour les sélecteurs génériques.
Le commit initial de rastapopoulos apporte des éléments de réponse :
«
Création d'un sélecteur générique d'objets permettant de naviguer hiérarchiquement si besoin.
Il faut appeler "formulaires/selecteur/generique"
avec à peu près les mêmes options que dans l'ancien picker,
sauf que pour préciser un chemin précis, on ne donne pas {id_article} ou {id_rubrique}
mais {objet=truc} et {id_objet=XX}.
Ensuite il y a des options supplémentaires, dont surtout :
{whitelist=#ARRAY{liste des objets à sélectionner}}
{blacklist=#ARRAY{liste des objets à ne pas ...}}
Le code repose sur le même fonctionnement mais avec plus d'inclusions pour découper et détecter chaque type d'objet.
Pour ajouter un nouvel objet, il suffit de créer :
- obligatoirement : "hierarchie-TYPES.html"
- facultatif : lister-racine-TYPES.html pour lister cet objet à la racine du navigateur (peut très bien être une entrée unique si c'est pas hiérarchique)
- facultatif : lister-TYPES-TYPES.html pour faire la liste des TYPES contenu dans un autre TYPES
- facultatif : lister-TYPES-articles.html pour faire la liste des articles contenu dans un TYPES
- facultatif : lister-rubriques-TYPES.html pour faire la liste des TYPES contenu dans une rubrique
- etc etc... à vous de choisir suivant l'objet !
»
Le mer. 6 nov. 2019 à 09:48, Jean Marie Grall a écrit :
Salut,
Le 05/11/2019 à 21:02, chankalan@choc0.net a écrit :
> Le 05/11/2019 à 20:46, Gildas Cotomale a écrit :
>> Je découvre, parmi les saisies fournies par le plugin du même nom,
>> une sympa pour choisir un article. Mais je ne comprends pas pourquoi
>> ça ne retourne pas le id_article choisi...
>> https://contrib.spip.net/Comment-declarer-un-mod
>> ele-pour-le-plugin-Inserer#forum502935 Comment obtenir juste l'id ;
>> et pour ma culture, où puis-je voir l'usage du result ?
(arf, je ne m'étais pas rendu compte que mon lien était coupé
...toujours bien se relire)
> il faut passer par la fonction picker_selected qui retourne un tableau
> objet|id_objet
> par exemple si dans un plugin la configuration propose un sélecteur de
> rubriques nommé "accueil", ensuite dans le squelette on peut récupérer
> la sélection avec :
> {id_rubrique IN #CONFIG{monplugin/accueil}|picker_selected{rubrique}}
> tu trouves ça dans ecrire/inc/filtres_selecteur_generique.php
Ah mais merci
Merci également.
Ça n'a pas l'air simple le sélecteur générique... La doc initiée par
JLuc est plus que bienvenue !
Je ne vous raconte pas les stratagèmes peu glorieux à base de |replace
que j'avais mis en place pour y arriver sans cette info !
Intéressant ; je suis curieux de voir des exemples si t'en as encore
sous le coude.
(en tout cas ça montre que plus de gens ont été confronté à ce genre
de problème)