How to make a MediaWiki site multilingual

时间秒杀一切 提交于 2019-11-28 21:38:32

There are two different ways to make a multilingual wiki setup.

  1. You can have a family of wikis each of which supports a different language. This is how the Wikipedias work (en.wikipedia.org, ru.wikipedia.org, es.wikipedia.org, etc). This is probably what you are aiming for. Pay special attention to the section on configuring interwiki links to get the links on the left hand side of the page.

  2. You can create one wiki that supports multiple languages. This is how meta.wikimedia.org works. For that, you want to use the Translate extension.

An easier way for smaller wikis is through the use of a simple template. It may not be as efficient as an extension or creating a family of wikis, which is a lot of work, but quite fast to set up.

Create a page under Template:Otherlang with the following code:


{{otherlang
|ru=Template:Otherlang:ru
}}

This template adds available translations for the page to the top through the use of flags.

To prevent issues, this template must be placed '''at the very beginning of a page'''.

Tip! When contributing a new translation to a document that already has other translations, please carry over the existing translations to the otherlang template of your contributed page. This way all multilingual pages are linked.

== Syntax ==
{{otherlang
| noborder=true (OPTIONAL)
| title=localized page display title
| lang=page:lang
| lang2=page:lang2
| etc...
}}
Warning! Do not include the language of the current page. This will only confuse readers. === Example === On a page called [[Template:Otherlang]]:
{{otherlang
| title=Template:Otherlang
| ru=Category:Programming:ru
}}
Note that: * The language "en" is not included, as it is the language of the page that template is being used on. * title is assigned the translated name of the page, and will appear as the display title (heading) for the page. This can replace the existing {{wrongtitle}} and {{DISPLAYTITLE}} templates currently in common use. * The English page has no suffix. == Available Languages == {| class="table table-bordered" border="2" cellpadding="7" ! Language ! Syntax ! Result |- id="en" |English |en=Page_name |[[File:En.png]] |- id="ru" |Russian |ru=Page_name:ru |[[File:Ru.png]] |} {{#if: {{{title|}}} | {{DISPLAYTITLE:{{{title}}}}} }}{{#if: {{{en|}}} | '''[[File:En.png|alt=English|link={{{en}}}]]''' }} {{#if: {{{ru|}}} | [[File:Ru.png|alt=Русский|link={{{ru}}}]] }}

Then within each English article, paste use the following code to get a flag to show up, representing the respective language.

{{otherlang
| title=Tutorials/Galacticraft Getting Started Guide
| ru=Tutorials/Galacticraft_Getting_Started_Guide/ru
}}

An example of this can be found here. If you click on the Russian flag to the right you will find a Russian translation of the article.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!