[spip-dev] <//B_ optionnel, qui ne fait pas ce qu'il faudrait

Bonjour,

Soit une boucle toute simple :

<BOUCLE_article_existe(ARTICLES){titre=NN}/>#SET{pasla,1}<//B_article_existe>

#GET{pasla} renvoie toujours 1 même si le titre existe...

De même avec :

<BOUCLE_article_existe(ARTICLES){titre=NN}></BOUCLE_article_existe>#SET{pasla,1}<//B_article_existe>

Par contre, ajouter un espace prend bien en compte ce que je souhaite (la partie optionnelle donc, qui n'extrait aucun champ de l'article) :

<BOUCLE_article_existe(ARTICLES){titre=NN}> un espace ici </BOUCLE_article_existe>#SET{pasla,1}<//B_article_existe>

Est-ce normal que les 2 précédentes syntaxes ne prennent pas en compte la partie optionnelle de la boucle ?

Testé avec SPIP 2 beta [12867].

Lo

Il arrive qu'une boucle ne soit pas interprétée si la boucle est vide.
L'astuce que j'utilise c'est un
[(#ID_ARTICLE|?{' '})]

mais c'est pas genial.

<BOUCLE_article_existe(ARTICLES){titre=NN}/>#SET{pasla,1}<//B_article_existe>
#GET{pasla} renvoie toujours 1 même si le titre existe...

Oui c'est comme ça que ça marche : la boucle ne renvoie pas de texte,
donc //B est appelée

-- Fil

Je crois qu'il y a une exception dans le cas où on met un #TOTAL_BOUCLE dans le <//B_ mais sinon, c'est comme dit Fil :wink:

Pierre

Fil wrote: