On 26/06/12 18:48, Denny Vrandečić wrote: > Hi all, > > we are trying to let users switch their language - whether they are > logged in or not - through a language selector. This can be either the > ULS, which is progressing impressively, or just a list of languages in > the sidebar, or anything else. After selecting it, the page is > rerendered using the uselang parameter. > > Now the problem: the uselang parameter is not sticky. When I move to > another page, it is lost. > > We tried to change the linker in order to add the uselang parameter > every time -- but it only works in the content, not in the sidebar and > actionlinks. > > We could put the language into a cookie, as the ULS currently does, > but this means that the squid caches won't work, afaik.
You are going to fragment the caches whether you use a parameter or a cookie. IMHO the cookie option is a cleaner one (I think that would also allow to make a single purge). > We could take the output just before it is send to the browser and > regex-substitute all the links in order to add the uselang parameter > every... OK, half joking. Only half. Some wikis have a javascript which does exactly that, adding a userlang parameter the moment you click a link. Much better than a string regex :) > Another solution could be to put the language into the path, i.e. the > pretty URL /wiki/San_Franicisco does get rewritten to > /w/index.php?title=San_Francisco as of now, but change that to > /hr/San_Francisco rewritten to /w/index.php/San_Francisco?uselang=hr > > (or /w/index.php/Special:UseLang/hr/San:Franciso with an Alias if this > is more pleasing) I like having the structure of languages-as-folders but you would need to send a purge to every language variation of a page... > I think this is based on an idea of Brion during the Hackathon. > > So switching the user language amounts to change the URL. > > Any comments on this? > > Cheers, > Denny _______________________________________________ Wikitech-l mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/wikitech-l
