Le 13/01/2010 22:23, Stephane a écrit :
Olivier Gautier a écrit :
Le 13/01/2010 21:58, Stephane a écrit :
Olivier Gautier a écrit :
Bonsoir,
petite question technique.
J'ai une noisette qui est située derrière plusieurs inclusions dans divers squelettes (sommaire.html, article.html, etc.).
Je veux que la noisette ait un comportement différent si elle est située derrière sommaire.html ou si elle est située derrière un autre squelette.
Y a-t-il un moyen rapide (une balise technique ou autre...) pour savoir si on est dans un environnement inclus derrière sommaire.html ?
Merci par avance pour vos réponses,
Olivier Gautier.
A toi de passer l'information voulue au moment de l'inclusion (donc dans le squelette appelant)
tu peux par exemple dans sommaire ajouter {depuissommaire=1} à ton inclusion et du coup dans ta noisette faire :
[(#ENV(depuisommaire)|oui) truc affiché pour sommaire]
mais tu peux peut etre exploiter une info utile et déja passé, genre :
[(#ENV(id_rubrique)|non) truc affiché pour sommaire]
il faut voir, ca dépend du contexte de ta noisette...
Merci pour la proposition de la variable d'environnement, j'y avais pensé mais cela ne me convient pas non plus : en fait, je ne veux (peux) pas toucher aux squelettes de base mais uniquement aux noisettes pour diverses raisons... Il n'y a visiblement pas de choses toutes faites qui donnent ce que j'attends... Dommage. Il va falloir que je me creuse les idées un peu plus...
Quant à [(#ENV(id_rubrique)|non) truc affiché pour sommaire] , il y a aussi des pages comme le plan du site ou la page de recherche qui seraient ciblées, et cela ne me convient pas davantage...
ah, OK.
Mais non, tu ne cherches pas dans la bonne direction, le principe meme de la noisette, c'est de pouvoir exploiter un meme cache depuis plusieurs endroits => à contexte identique, tu ne pourras pas avoir 2 codes differents.
Tu peux peut etre tenter quelque chose sur la balise #SELF mais meme pas sur.
En fonction du format d'URL, c'est pas forcément exploitable.
Bon, on va clore ici : merci à tous pour vos propositions.
La conclusion est qu'il vaut mieux que je gère cela avec une variable d'environnement dans sommaire.hmtl comme proposé au début.
Pourquoi je ne voulais pas de cela au départ me direz vous ?
Parce que cela va imposer que je modifie les sources de la distribution EVA-web uniquement pour un problème sur une plate-forme mutualisée locale.
Pas terrible, mais après tout ça ne gênera en rien les sites qui n'en ont pas besoin, et un p'tit bout de code perso est bien mérité pour une fois alors que je développe toujours pour les autres.
Bonne soirée,
Olivier Gautier.
Mais bon, rien ne t'empeche de mettre un petit if php qui test directement la variable $_SERVER....
=> meme code mais à l'execution, pas le meme resultat, c'est donc soit ca, soit une balise dynamique
@++
_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Discuter chez rezo.net
Documentation de SPIP : http://www.spip.net/
Irc : de l'aide à toute heure : http://spip.net/irc