Difficulté pour générer liste

Je veux générer une liste des mots clés passés en argument (grp1, grp2 et grp3) pour les compter et effectuer des traitements en fonction de ce nombre.

Mais la syntaxe suivante ne fonctionne pas :
#SET{liste_keywords, #LISTE{[(#ENV{grp1})][(#ENV{grp1}|et{#ENV{grp2}}),][(#ENV{grp2})][(#ENV{grp2}|et{#ENV{grp3}}),][(#ENV{grp3})]}}

En effet, cela affiche directement sur la page la syntaxe suivante (si par exemple le mot clé avec l’id 8 est passé en paramètre) :
8 }}

Et bien sûr #GET{liste_keywords} ne renvoie rien.
Qu’est-ce que j’oublie ?

Si tu as recours à des données tabulaires dès le début, tu peux t’épargner des manipulations superflues, et utiliser directement la valeur d’ #ENV dans un critère de boucle :
En supposant ton url de départ : monsite.tld/?id_mot[]=2&id_mot[]=8&id_mot[]=22
Tu disposes d’un #ENV{id_mot} correctement rempli

[<pre>(#ENV{id_mot,#LISTE}|print_r{1})</pre>]

Nombre de mots : [(#ENV{id_mot,#LISTE}|count)]

Ha oui ce serait pratique mais les mots clés sont passés par des intitulés différents : grp1, grp2 et grp3. J’ai besoin de cela pour mettre en place des filtres avec des select…
On peut utiliser cette syntaxe si les mots clés sont passés avec des intitulés de variables différents ?

La logique de passer par des labels tiers m’échappe. Mais bon, le principe des données tabulaires fonctionne quoi qu’il en soit.

Seule subtilité, il faut échapper les crochets [ ] afin que le compilateur ne les interprète pas :

Pour générer une url :

[(#SELF|parametre_url{id_groupe\[\],5})]

Pour générer un input dans un formulaire :

<input type="hidden" name="id_collection\[\]" value="56"/>

OK !
Mon squelette est presque terminé et fonctionne bien avec ces labels tiers qui sont très utiles :wink:

Il me reste juste à générer la liste des variables passées pour finaliser : je ne comprends pas pourquoi la syntaxe #set{liste_keywords... échoue.
la syntaxe (#ENV{id_mot,#LISTE}|print_r{1}) peut-elle être adaptée pour lister les variables grp1, grp2 et grp3 ?

<B_nb_grp><BOUCLE_nb_grp(DATA){source table, #ENV}{cle==^grp}>
[/*<!--(#REM) #ENV{#CLE} -->*/]
</BOUCLE_nb_grp> Nombre de filtres : #TOTAL_BOUCLE</B_nb_grp> 

Super : c’est effectivement beaucoup + efficace !
Je ne connaissais pas cette possibilité d’utiliser les variables d’environnement comme source de données : merci pour l’info qui va beaucoup me servir !