Bonjour,
le contexte est « les modèles ». J’écris deux modèles dont j’aimerais qu’ils communiquent ensemble, pour éviter que l’utilisateur du modèle ait à taper 2 fois les mêmes paramètres. Du coup j’aurais aimé pouvoir mettre les paramètres passés au premier modèle dans des variables globales afin que le 2ieme modèle puisse les récupérer.
Est-ce faisable en SPIP ?
Merci,
Mikhaël
Le 09/11/2017 à 12:44, Mikhaël MYARA a écrit :
Bonjour,
le contexte est « les modèles ». J’écris deux modèles dont j’aimerais qu’ils communiquent ensemble, pour éviter que l’utilisateur du modèle ait à taper 2 fois les mêmes paramètres. Du coup j’aurais aimé pouvoir mettre les paramètres passés au premier modèle dans des variables globales afin que le 2ieme modèle puisse les récupérer.
Est-ce faisable en SPIP ?
Bof c'est probablement faisable...
mais ce n'est probablement pas la bonne manière de faire.
Voudrais tu donner un peu le contexte et préciser ce que tu veux faire ?
JL
Merci pour votre réponse.
En gros : je veux que l’utilisateur utilise le modèle avec la syntaxe <nom1|param1|param2>
Je veux l’utiliser pour envelopper un morceau de texte :
<nom1|debut|param1|param2|param3>
blablabla
<nom1|fin|param1|param2|param3>
Le code de « fin » dépend des paramètres, identiques à ceux de « debut ». Je voudrais faire l’économie, pour l’utilisateur, d’avoir à les repasser.
Typiquement : « debut » va « ouvrir » des séquences html (genre <div class=« … »>) qui dépendent des paramètres, et « fin » doit les refermer, et doit donc connaitre les paramètres qui ont été passé à « début ».
Pour des raisons de simplicité, je préfèrerais utiliser simplement deux modèles que de parser les pipelines de spip - qui à coup sûr permet de résoudre mon problème mais je n’ai jamais mis les mains dans les pipelines et j’avoue que je préfère éviter.
Est-ce que le problème est mieux formulé ?
Merci encore,
Mikhaël
Le 9 nov. 2017 à 21:46, JLuc <jluc@no-log.org> a écrit :
Le 09/11/2017 à 12:44, Mikhaël MYARA a écrit :
Bonjour,
le contexte est « les modèles ». J’écris deux modèles dont j’aimerais qu’ils communiquent ensemble, pour éviter que l’utilisateur du modèle ait à taper 2 fois les mêmes paramètres. Du coup j’aurais aimé pouvoir mettre les paramètres passés au premier modèle dans des variables globales afin que le 2ieme modèle puisse les récupérer.
Est-ce faisable en SPIP ?Bof c'est probablement faisable...
mais ce n'est probablement pas la bonne manière de faire.Voudrais tu donner un peu le contexte et préciser ce que tu veux faire ?
JL
_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.netArchives : https://www.mail-archive.com/spip@rezo.net/maillist.html
Infos : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
Irc : de l'aide à toute heure : http://spip.net/irc
Le 09/11/2017 à 22:38, Mikhaël MYARA a écrit :
Merci pour votre réponse.
En gros : je veux que l’utilisateur utilise le modèle avec la syntaxe <nom1|param1|param2>
Je veux l’utiliser pour envelopper un morceau de texte :
<nom1|debut|param1|param2|param3>
blablabla
<nom1|fin|param1|param2|param3>Le code de « fin » dépend des paramètres, identiques à ceux de « debut ». Je voudrais faire l’économie, pour l’utilisateur, d’avoir à les repasser.
Typiquement : « debut » va « ouvrir » des séquences html (genre <div class=« … »>) qui dépendent des paramètres, et « fin » doit les refermer, et doit donc connaitre les paramètres qui ont été passé à « début ».
Pour des raisons de simplicité, je préfèrerais utiliser simplement deux modèles que de parser les pipelines de spip - qui à coup sûr permet de résoudre mon problème mais je n’ai jamais mis les mains dans les pipelines et j’avoue que je préfère éviter.
Est-ce que le problème est mieux formulé ?
pour moi oui ;
en tout cas spontanément je vois 2 pistes :
- faire une fonction, appelée en filtre,
qui empile un jeu de paramètres (appelée au |debut) en tableau dans une variable statique,
et qui ait aussi un argument spécial pour demander à les dépiler (appelée à la |fin)
et les renvoyer.
(Et peut être ce sera plus simple avec 2 modèles : <debut|...> et <fin|...>)
L'empilage/dépilage c'est si tu veux pouvoir emboîter tes structures,
sinon une simple static affectée/lue suffit.
- faire avec textwheel (et potentiellement choisir une syntaxe plus appropriée).
a priori, c'est fait pour,
mais concrètement j'ai jamais fait et je crois pas que ça soit documenté.
JL