[Résolu] espce inséré entre URL et argument : comment le supprimer ?

Bonjour,
Le code suivant insère un espace entre l’URL de l’article et l’argument qui suit « ?id_rub=3514 » (lorsque nbart différent de 0) :

<a href="[(#URL_ARTICLE)][(#GET{nbart}!={''}|oui)?id_rub=#GET{idrubmultirub}]">[(#TITRE|supprimer_numero|couper{150})]</a>

L’URL obtenu ne fonctionne donc pas :
https://urldemon.site/article-machin.html ?id_rub=45621

Quelqu’un saurait comment se débarrasser de cet espace ?

On peut bien sûr résoudre le problème ainsi pour n’afficher l’argument que lorsque nbart est différent de 0 :
<a href="[(#GET{nbart}!={''}|non)#URL_ARTICLE][(#GET{nbart}!={''}|oui)#URL_ARTICLE?id_rub=#GET{idrubmultirub}]">[(#TITRE|supprimer_numero|couper{150})]</a>

Mais cela n’explique pas d’où provient cet espace gênant.

Essaye avec ça [(#GET{nbart}|?{#URL_ARTICLE,#URL_ARTICLE|parametre_url{id_rub,#GET{idrubmultirub}}})].

De l’utilisation des filtres oui & non qui génèrent un espace cf |oui - SPIP

2 « J'aime »

Merci beaucoup pour ces explications !

Et effectivement ce code est plus concis :
[(#GET{nbart}|?{#URL_ARTICLE|parametre_url{id_rub,#GET{idrubmultirub}},#URL_ARTICLE})]

(il faut inverser les 2 termes de la condition, car c’est le « sioui » qui est le premier argument)

Ha oui, désolé, j’ai lu ton code initial trop vite, content que tu aies trouvé ton bonheur.