Marc !
In a dispatch rule you need to use “z_language”, you could do it like this:
{page, ["page", id, z_language, slug ], controller_page, [ … ]}
This is brilliant !
How I didn't find it by myself :-)
Thank you so much !
Le mardi 6 décembre 2016 09:05:53 UTC+1, Marc Worrell a écrit :
>
> Hi Antoine,
>
> What you are trying will work in the master (1.0-dev).
> In the master the z_language variable is handled in a special way.
>
> In the 0.x you can set the language in the request handler or for template
> expressions like:
>
> {{ _”Hello” with z_language = `de` }}
>
> (Note the back-ticks, that forces an atom, all language codes are atoms.)
>
> In Erlang you can set the language like this:
>
> Context1 = z_context:set_language(de, Context)
>
> In a dispatch rule you need to use “z_language”, you could do it like this:
>
> {page, ["page", id, z_language, slug ], controller_page, [ … ]}
>
> And then maybe also force it to be two letters:
>
> {page, ["page", id, {z_language, “^[a-z][a-z]$”}, slug ], controller_page,
> [ … ]}
>
> Note that this is only used for dispatching requests.
> I don’t expect it to work for the url generation...
>
> mod_translation will see the “z_language” during the session notifications
> and set the language.
>
> Regretfully we don’t have a way to force a fixed language in the
> controller options.
> That would be easy to add though, if you like you can file an issue for
> that and explain your use case.
>
> Best, Marc
>
>
> On 05 Dec 2016, at 19:28, Antoine <[email protected] <javascript:>>
> wrote:
>
> Hello,
>
> I'm in a specific configuration that prevent url rewriting for setting
> language.
> So I tried to extract and language parameter using a dispatch url:
>
> .. ["page", id, lang, slug ], controller_template ....
>
> Inside the template I would like to be able to do the following:
>
> {% include "_sub_template" z_language=q.lang %}
>
> But that fails.
>
> If I understand correctly the only way to force a new language is the
> z_language var in the javascript side ?
>
> Is there a way to force z_language ?
>
> Should I need to create a specific controller_X that will pass a
> z_language var to a z_render:template() ?
>
> NOTE:
> I even tried:
> {% with q.lang as z_language %}
> {_ translate me _}
> {% trans "translate me" %}
> {% endwith %}
>
> Nothing works :-(
>
>
> Thank you !
>
>
>
> --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "Zotonic developers" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected] <javascript:>.
> For more options, visit https://groups.google.com/d/optout.
>
>
>
--
---
You received this message because you are subscribed to the Google Groups
"Zotonic developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.