INCLURE sur filtre (sioui, sinon)

Bonjour,

Je rencontre l'impossibilité d'afficher un INCLURE dans un filtre
conditionnel (sioui, sinon).

Plus précisément, le code suivant fonctionne

---

[(#ID_ARTICLE|?{
<INCLURE{fond=menu}>
,
<INCLURE{fond=menu}>
})]

---

et pas celui-ci

---

[(#ID_ARTICLE|?{
<INCLURE{fond=menu}{id_article=#ID_ARTICLE}>
,
<INCLURE{fond=menu}>
})]

---

La seule différence entre ces deux codes est l'ajout du paramètre
{id_article=#ID_ARTICLE} dans un INCLURE.

Je ne comprends pas pourquoi le deuxième code n'est pas accepté.
Est-il normal de ne pas pouvoir passer de paramètres à un INCLURE dans le
cas d'un filtre conditionnel ?

Je cherche tout simplement à passer le paramètre ID_ARTICLE à l'INCLURE
si et seulement si le paramètre ID_ARTICLE est défini.

Merci de votre aide.

siruphi a écrit :

Bonjour,

Je rencontre l'impossibilité d'afficher un INCLURE dans un filtre conditionnel (sioui, sinon).

Plus précisément, le code suivant fonctionne

---

[(#ID_ARTICLE|?{
<INCLURE{fond=menu}>
,
<INCLURE{fond=menu}>
})]

---

---

[(#ID_ARTICLE|?{
<INCLURE{fond=menu}{id_article=#ID_ARTICLE}>
,
<INCLURE{fond=menu}>
})]
---

As-tu tenté avec <INCLURE {fond=menu} {id_article}>

Claude

siruphi a écrit :

Bonjour,

Je rencontre l'impossibilité d'afficher un INCLURE dans un filtre conditionnel (sioui, sinon).

Plus précisément, le code suivant fonctionne

---

[(#ID_ARTICLE|?{
<INCLURE{fond=menu}>
,
<INCLURE{fond=menu}>
})]

---

---

[(#ID_ARTICLE|?{
<INCLURE{fond=menu}{id_article=#ID_ARTICLE}>
,
<INCLURE{fond=menu}>
})]
---
La seule différence entre ces deux codes est l'ajout du paramètre {id_article=#ID_ARTICLE} dans un INCLURE.

Je ne comprends pas pourquoi le deuxième code n'est pas accepté.
Est-il normal de ne pas pouvoir passer de paramètres à un INCLURE dans le cas d'un filtre conditionnel ?

Je cherche tout simplement à passer le paramètre ID_ARTICLE à l'INCLURE si et seulement si le paramètre ID_ARTICLE est défini.

Merci de votre aide.

Lis http://www.cent20.net/spip.php?article84 et tente de faire ceci :

[(#ID_ARTICLE|?{'',' '})
<INCLURE{fond=menu}>
]

[(#ID_ARTICLE|?{' ',''})
<INCLURE{fond=menu}{id_article=#ID_ARTICLE}>
]

--
Vincent ROBERT - www.cent20.net (SPIP & Squelette BliP)

cogefip,

As-tu tenté avec <INCLURE {fond=menu} {id_article}>

oui et ça ne fonctionne pas, mais c'est normal :slight_smile:

j'ai eu le temps de chercher
et de découvrir que la syntaxe du filtre n'est pas la même pour INCLURE

--- mauvaise syntaxe

[(#ID_ARTICLE|?{
<INCLURE{fond=menu}{lang}{id_article=#ID_ARTICLE}>
,
<INCLURE{fond=menu}{lang}>
})]

---

--- syntaxe correcte

[(#ID_ARTICLE|?{' ',''})
{
<INCLURE{fond=menu}{lang}{id_article=#ID_ARTICLE}>
}]

[(#ID_ARTICLE|?{'',' '})
{
<INCLURE{fond=menu}{lang}>
}]

---

j'ai trouvé et enfin compris cette subtilité de la syntaxe quand on veut
intégrer des INCLURE dans un filtre

pour info : le code ci-dessus appelle le squelette "menu.html"
avec le paramètre id_article si et seulement si ID_ARTICLE est défini

c'est ce que je voulais

je me permets de mettre un lien vers un article qui m'a particulièrement
aidé
http://www.cent20.net/spip.php?article84

++

Vincent ROBERT,

Lis http://www.cent20.net/spip.php?article84 et tente de faire ceci :

merci, juste quand j'avais trouvé par moi-même

les grands esprits se rencontrent :slight_smile:

[(#ID_ARTICLE|?{'',' '})
<INCLURE{fond=menu}>
]

ça ne fonctionnera pas

en l'état il va afficher des accolades autour de l'INCLURE

c'est toute le difficulté de ces filtres :
la syntaxe n'est pas la même selon que l'INCLURE a des paramètres ou non

voici la bonne syntaxe (INCLURE sans paramètre)

[(#ID_ARTICLE|?{
'',
<INCLURE{fond=menu}>
})]

[(#ID_ARTICLE|?{' ',''})
<INCLURE{fond=menu}{id_article=#ID_ARTICLE}>
]

ça c'est bon car l'INCLURE a au moins un paramètre

++

On Wed, 2006-07-12 at 07:05 +0000, siruphi wrote:

> [(#ID_ARTICLE|?{'',' '})
> <INCLURE{fond=menu}>
>]

a ne fonctionnera pas

en l'tat il va afficher des accolades autour de l'INCLURE

hein ?
je viens d'essayer : moi ça marche ...

--
À+, Pif.

christian lefebvre <christian.lefebvre@atosorigin.com> écrivait
news:1152691656.7261.44.camel@w30659.dev.atos.fr:

On Wed, 2006-07-12 at 07:05 +0000, siruphi wrote:

> [(#ID_ARTICLE|?{'',' '})
> <INCLURE{fond=menu}>
>]
en l'tat il va afficher des accolades autour de l'INCLURE

hein ?
je viens d'essayer : moi ça marche ...

oui, ça marche, mais ça ajoute des accolades autour de l'INCLURE

alors que ça n'en ajoute pas si on l'écrit comme ça

[(#ID_ARTICLE|?{
'',
<INCLURE{fond=menu}>
})]

en tous cas chez moi...

argh, pardonnez-moi mais je reviens une dernière fois

et oui, je me trompais encore

alors que ça n'en ajoute pas si on l'écrit comme ça

[(#ID_ARTICLE|?{
'',
<INCLURE{fond=menu}>
})]

et ben si, ça ajoute des accolades

la bonne syntaxe est la suivante

[(#ID_ARTICLE|?{' ',''})
  <INCLURE{fond=menu}>
]

fonctionne sans paramètres et avec

[(#ID_ARTICLE|?{' ',''})
  <INCLURE{fond=menu}{paramètres}>
]

ça m'étonne car c'est bien plus simple que ce que j'ai vu dans tous les
liens sur le sujet...

ça marche aussi chez vous ?

merci en tous cas de vous être penchés sur ce problème !