|
|
 |
Probleme avec les $view_parameters |
 |
Vous devez être connecté pour utiliser le forum. Vous pouvez le faire ici.
|
Auteur
|
Message
|
|
Franck Malherbe
|
Jeudi 19 Février 2009 9:52:37 am
Probleme avec les $view_parameters
Bonjour,
Je dois créer un site avec une architecture un peu bizarre qui nous impose de gérer les langues autrement que par les siteaccess; nous avons donc décidé de passer la langue dans l'url par l'intermédiaire d'un custom $view_parameters. Lorsqu'un utilisateur clique sur une langue dans le site cela crée une url du type [url]/(langue)/[la langue cliquée] et ensuite pour récupérer la langue nous utilisons $view_parameters.langue.
Le problème c'est que notre $view_parameters ne peut pas prendre deux fois la même valeur!!! Par exemple si l'url est [url]/(langue)/fre-FR alors $view_parameters.langue vaut fre-FR (normal), ensuite si l'url devient [url]/langue/eng-GB alors $view_parameters.langue vaut eng-GB (là encore c'est normal). Par contre si on remet une valeur déjà donnée pour langue comme [url]/(langue)/fre-FR alors $view_parameters.langue ne vaut plus rien alors qu'il devrait de nouveau avoir la valeur fre-FR.
Est-ce que quelqu'un pourrait m'aider?
Merci
Dur de commencer avec eZ publish
|
|
Bertrand Dunogier
|
Jeudi 19 Février 2009 11:16:15 am
Re: Probleme avec les $view_parameters
Hmmm, je pense que vous êtes ici face à un problème de cache: le ViewCache, ou cache de contenu (http://ez.no/doc/ez_publish/technical_manual/4_0/features/view_caching), stocke le résultat d'une visualisation de contenu pour la restituer en cas de requête identique. Les paramètres de vue sont ici pris en compte, stockant un cache différent par valeur de (language).
1. requête /(language)/fre-FR => le résultat est mis en cache
2. requête /(language)/eng-GB => le résultat est mis en cache
3. requête /(language)/fre-FR => le cache créé en 1. est restitué
Le template de visualisation, surchargeant node/view/full.tpl n'est donc pas exécuté passé la première requête, et c'est peut être la raison pour laquelle vous avez l'impression que le paramètre n'est pas pris en compte. Cependant, j'ai l'impression que cela devrait correspondre à vos besoins... que faites-vous exactement avec le paramètre ?
|
|
Franck Malherbe
|
Vendredi 20 Février 2009 10:25:38 am
Re: Probleme avec les $view_parameters
Merci pour votre réponse
J'ai donc joué un peu avec le cache et quand le ViewCache est activé j'ai
1. requête /(language)/fre-FR => $view_parameters.langue = fre-FR
2. requête /(language)/eng-GB => $view_parameters.langue = eng-GB
3. requête /(language)/fre-FR => $view_parameters.langue = rien
Et si le ViewCache est désactivé:
1. requête /(language)/fre-FR => $view_parameters.langue = fre-FR
2. requête /(language)/eng-GB => $view_parameters.langue = eng-GB
3. requête /(language)/fre-FR => $view_parameters.langue = fre-FR
Je ne comprend pas trop pourquoi quand mon viewCache est activé la valeur "fre-FR" mise en cache n'est pas restituée?
Existe-t-il un autre moyen pour qu'une variable soit accessible à travers tout le site sans la faire passer dans l'URL?
Merci d'avance
Dur de commencer avec eZ publish
|
|
|
 |
|