Hi all!
During next Wednesday's RFC meeting on IRC, we are planning to discuss introducing "Per-language URLs for pages of multilingual wikis". This is an exploratory discussion, with no expectation of a final decision. We are looking for concerns and suggestions.
If you care about improved support for multi-lingual wikis, please visit https://phabricator.wikimedia.org/T114662 and comment before next week's "live" meeting on IRC. And of yourse, join that meeting, if you like!
Thanks, Daniel
PS: Don't want to click the link? Let me copy&paste that for you... but please comment on phab rather than here.
Context: Some wikis show page content depending on the user's interface language (for instance wikidata.org and commons.wikimedia.org, or other wikis using the Translate extension). All language versions (renderings) of a page are served from the same URL, which is problematic for web caching. This is the reason we currently do not allow anonymous users to change their interface language. This makes it hard for use multilingual wikis without logging in.
See also for context: * {T114640}
Proposal: * For multilingual wikis, the user language is part of the request path: e.g. we would use `/wiki-de/` instead of `/wiki/`. * The plain `/wiki/` path would act as a 302 redirect to the language specific path (based on the user's language, or a best guess or cookie as implemented by ULS) * When viewing a page via a language-specific path, all links on the page (both content and skin) point to pathes specific to that language. Both content and skin are shown in the user's ui language (as far as possible, using whatever mechanism for content translation or internationalization is available) * When viewing a page in a language different from the user's preferred language (according to user preferences or the cookie set by ULS), a warnign bar is shown at the top, giving the user the option to ## switch to the version in their own language (according to user preference) ## change their user language to the current page's language ## hide the bar for a while (a day, or the browser session, or so).
Challanges: * Make the Linker class aware of the target language (probably needs a complete refactoring), so it generates links to the right path. * Make all code that generates links in the skin use the Linker class (directly, or via the Parser), so the path is consistent. * Allow efficient purging of the entire "bundle" of all the renderings of a given page when the page's content changes. * Should translated names for namespaces and special pages be supported on the language specific pathes? (would be nice, but tricky) * Provide a way to explicitly link to a specific language rendering from wikitext, e.g. `{{#link|Foo|lang=de-ch}}`
Daniel Kinzler wrote:
During next Wednesday's RFC meeting on IRC, we are planning to discuss introducing "Per-language URLs for pages of multilingual wikis". This is an exploratory discussion, with no expectation of a final decision. We are looking for concerns and suggestions.
If you care about improved support for multi-lingual wikis, please visit https://phabricator.wikimedia.org/T114662 and comment before next week's "live" meeting on IRC. And of yourse, join that meeting, if you like!
As I said on the Phabricator task, before we extend our URL specifications, I'd like us to explicitly define them. I think it's time.
* Maybe we no longer want /wiki/ in the URL for regular views. * For the two cited examples, commons.wikimedia.org and wikidata.org, maybe we want to move the former to its own domain (e.g., wikicommons.org) and change the latter to load from en.wikidata.org, fr.wikidata.org, etc.
I think outside users and developers don't want to learn the intricacies of why some URLs end in "en" and some start with "en". I think most people just want a repeatable procedure for determining what URL they can hit and what to expect from it.
In the process of defining our URL schemes, we can probably make our resource locators a bit more uniform, or at least document what we would like to eventually achieve.
For the Architecture Committee in particular, I think giving some renewed focus to our information architecture is reasonable and prudent. (I know Brion and Gabriel have both worked on this previously.)
MZMcBride
wikitech-l@lists.wikimedia.org