Spip 3.2.1 - Boucle forum - #ID_ARTICLE

Bonsoir,

Le code suivant :

<BOUCLE_forums(FORUMS)>
[(#ID_ARTICLE|?{vrai,faux})]
</BOUCLE_forums>

Est toujours vrai, même si l'objet est un message de forum publié sur
une brève - #ID_ARTICLE retourne l'id de brève.

Comment vérifier que l'objet est une brève ?

Cordialement,

Eric

Le code suivant :

<BOUCLE_forums(FORUMS)>
[(#ID_ARTICLE|?{vrai,faux})]
</BOUCLE_forums>

Est toujours vrai, même si l'objet est un message de forum publié sur
une brève - #ID_ARTICLE retourne l'id de brève.

Comment vérifier que l'objet est une brève ?

[(#OBJET|=={breve}|?{vrai,faux])]

Est-ce correct ? ou y a t'il plus simple ?

Cordialement,

Eric

Le 18/03/2018 à 02:36, eric a écrit :

Bonsoir,

Le code suivant :

<BOUCLE_forums(FORUMS)>
[(#ID_ARTICLE|?{vrai,faux})]
</BOUCLE_forums>

Est toujours vrai, même si l'objet est un message de forum publié sur
une brève - #ID_ARTICLE retourne l'id de brève.

Comment vérifier que l'objet est une brève ?

Cordialement,

Eric

Bonjour,

Avec le critère {id_breve} ?

Le 18/03/2018 à 12:06, Chourak a écrit :

Le code suivant :

<BOUCLE_forums(FORUMS)>
[(#ID_ARTICLE|?{vrai,faux})]
</BOUCLE_forums>

Est toujours vrai, même si l'objet est un message de forum publié sur
une brève - #ID_ARTICLE retourne l'id de brève.

Comment vérifier que l'objet est une brève ?

Cordialement,

Eric

Bonjour,

Avec le critère {id_breve} ?
La boucle FORUMS - SPIP

euh, comment tu l'utiliserais ici ?

JL

Le 18/03/2018 à 02:49, eric a écrit :

Le code suivant :

<BOUCLE_forums(FORUMS)>
[(#ID_ARTICLE|?{vrai,faux})]
</BOUCLE_forums>

Est toujours vrai, même si l'objet est un message de forum publié sur
une brève - #ID_ARTICLE retourne l'id de brève.

C'est étonnant.

Comment vérifier que l'objet est une brève ?

[(#OBJET|=={breve}|?{vrai,faux])]

Est-ce correct ?

A priori oui, le champ objet est fait pour.

Qu'est ce que ça donne ?

ou y a t'il plus simple ?

Plus simple non, mais ça dépend aussi de ce que tu veux faire en fonction du résultat.
Si tu ne veux que les breves tu doit pouvoir faire

<BOUCLE_forums(FORUMS){objet=breve}>

ET pour n'avoir que les articles
<BOUCLE_forums(FORUMS){objet=article}>

JLuc

Merci Chourak, Jluc.

Le code suivant :

> > ```
> > <BOUCLE_forums(FORUMS)>
> > [(#ID_ARTICLE|?{vrai,faux})]
> > </BOUCLE_forums>
> > ```
> >
> > Est toujours vrai, même si l'objet est un message de forum publié
> > sur une brève - #ID_ARTICLE retourne l'id de brève.
C'est étonnant.

Je ne sais pas depuis quand, c'est la première fois depuis la migration
de 1.8.3 vers 3.2.n qu'un message de forum est publié sur une brève,
mais cela a fonctionné ansi pendant ...

#ID_BREVE ou #ID_ARTICLE renvoie toujours l'id de l'objet, mais
indifféremment du type de celui-ci.

De ce fait, la condition est toujours vrai.

Peut-être les critères de la boucle forum ?

<BOUCLE_forums(FORUMS){plat}{par date}{inverse}{0,15}>

> >
> > Comment vérifier que l'objet est une brève ?
> [(#OBJET|=={breve}|?{vrai,faux])]
>
> Est-ce correct ?
A priori oui, le champ objet est fait pour.

Qu'est ce que ça donne ?

C'est bon - Les forums ne sont activés que sur les articles et les
brèves :

#OBJET|=={article}|{ si oui [(#URL_ARTICLE|url_absolue)], sinon
[(#URL_BREVE|url_absolue)]

avant le changement ci-dessus, toujours vrai, et, pour une brève l'url
est incorrecte : cherche #URL_ARTICLE au lieu de #URL_BREVE et retourne
une URL incomplète de la forme :

?page=article&id_article=

Pour le cas décrit, il n'y a aucun article en base, avec le même id que
la brève : 444.

Pour les urls, j'utilise url_propre.

Merci,

Cordialement,

Eric

Le 18/03/2018 à 14:51, eric a écrit :

C'est bon - Les forums ne sont activés que sur les articles et les
brèves :

#OBJET|=={article}|{ si oui [(#URL_ARTICLE|url_absolue)], sinon
[(#URL_BREVE|url_absolue)]

Et par curiosité, que donne #URL_OBJET ?

JL

Le dimanche 18 mars 2018 à 17:28 +0100, JLuc a écrit :

Le 18/03/2018 à 14:51, eric a écrit :
>
> C'est bon - Les forums ne sont activés que sur les articles et les
> brèves :
> ```
> #OBJET|=={article}|{ si oui [(#URL_ARTICLE|url_absolue)], sinon
> [(#URL_BREVE|url_absolue)]
> ```
Et par curiosité, que donne #URL_OBJET ?

Cela renvoie l'url du site : http://www.domain.tld .

Pas l'url de l'objet.

Le 18/03/2018 à 13:58, JLuc a écrit :

Le 18/03/2018 à 12:06, Chourak a écrit :

Le code suivant :

<BOUCLE_forums(FORUMS)>
[(#ID_ARTICLE|?{vrai,faux})]
</BOUCLE_forums>

Est toujours vrai, même si l'objet est un message de forum publié sur
une brève - #ID_ARTICLE retourne l'id de brève.

Comment vérifier que l'objet est une brève ?

Cordialement,

Eric

Bonjour,

Avec le critère {id_breve} ?
La boucle FORUMS - SPIP

euh, comment tu l'utiliserais ici ?

JL

Alors oui en fait, je me suis précipité ! Donc en fait évidemment que ce n'est pas la solution, du coup l'utilisation de [(#OBJET|=={breve}|...)] me parait correcte ou du moins fonctionnelle.
Après j'ai pas assez expérimenté avec la boucle FORUMS...
Pour les urls des objets, si tu la récupères avec #INFO_URL{#OBJET,#ID_OBJET} ca fonctionne ?