Sommaire |
[modifier] Solution Art 122-5
Il s'agit d'une extension créé spécialement pour ce Wiki, mais hautement personnalisable en vue d'une intégration dans d'autres Wiki.
Gestion multi-langue pour MediaWiki avec l'extension MultiLanguageManager
[modifier] Solution avec ParserFunctions
Une solution consiste à utiliser l'extension ParserFunctions pour créer un template paramétrable en fonction de l'existence ou non de certaines pages.
La page sera créée dans la langue principale du wiki, les pages traduites porteront le nom de la page principale en ajoutant le code de la langue précédé d'un /, par exemple pour la page Accueil, la page anglaise est Accueil/en.
[modifier] L'extension ParserFunctions
Source : ParserFunctions
Pour l'installer, téléchargez les fichiers :
- Expr.php
- ParserFunctions.php
Créez un répertoire ParserFunctions dans votre répertoire extensions et placez y les fichiers téléchargés
puis ajoutez dans LocalSettings.php:
require_once( "$IP/extensions/ParserFunctions/ParserFunctions.php" );
[modifier] Le template de langue
Il ne reste plus, une fois l'extension ajoutée, qu'à créer le template Languages , par exemple :
<div style="vertical-align: middle;">
----
<span style="font-size:smaller">
Reference:
'''[[{{{1}}}|Français]]''' –
Translations:
{{
#ifexist: {{{1}}}/de | <span lang="de">[[{{{1}}}/de|Deutsch]]</span> •
}}{{
#ifexist: {{{1}}}/es | <span lang="es">[[{{{1}}}/es|Español]]</span> •
}}{{
#ifexist: {{{1}}}/fi | <span lang="fi">[[{{{1}}}/fi|Suomi]]</span> •
}}{{
#ifexist: {{{1}}}/en | <span lang="en">[[{{{1}}}/en|English]]</span> •
}}{{
#ifexist: {{{1}}}/it | <span lang="it">[[{{{1}}}/it|Italiano]]</span> •
}}{{
#ifexist: {{{1}}}/he | <span lang="he">[[{{{1}}}/he|עברית]]</span> •
}}{{
#ifexist: {{{1}}}/ja | <span lang="ja">[[{{{1}}}/ja|日本語]]</span> •
}}{{
#ifexist: {{{1}}}/ko | <span lang="ko">[[{{{1}}}/ko|한국어]]</span> •
}}{{
#ifexist: {{{1}}}/no | <span lang="no">[[{{{1}}}/no|Norsk nynorsk]]</span> •
}}{{
#ifexist: {{{1}}}/pl | <span lang="pl">[[{{{1}}}/pl|Polski]]</span> •
}}{{
#ifexist: {{{1}}}/pt | <span lang="pt">[[{{{1}}}/pt|Português]]</span> •
}}{{
#ifexist: {{{1}}}/ru | <span lang="ru">[[{{{1}}}/ru|Русский]]</span> •
}}{{
#ifexist: {{{1}}}/sq | <span lang="sq">[[{{{1}}}/sq|Shqip]]</span> •
}}{{
#ifexist: {{{1}}}/zh | <span lang="zh">[[{{{1}}}/zh|中文]]</span> •
}}</span>
----
</div>
[modifier] Utilisation
Pour chaque page, vous pouvez ajouter la gestion multi-langue en utilisant le tag suivant :
{{Languages|page principale}}
En remplaçant page principale par le nom de la page dans la langue d'origine.
Puis vous pourrez créer les page traduites en les nommant convenablement en fonction de la langue choisie
page principale/en