Open main menu
MediaWiki 拡張機能マニュアル
OOjs UI icon advanced.svg
LanguageSelector
リリースの状態: ベータ
実装 MyWiki, Tag, Locale
説明 匿名の訪問者も含めて、すべてのページ上で言語セレクタを提供します; 訪問者の言語を自動検出します
作者 Daniel Kinzler (Duesentriebtalk)
MediaWiki 1.19 以降
データベースの変更 いいえ
ライセンス GPL
ダウンロード
README
translatewiki.net
パラメーター
  • $wgLanguageSelectorDetectLanguage
  • $wgLanguageSelectorLanguages
  • $wgLanguageSelectorLocation
使用するフック
AddNewAccount
BeforePageDisplay
GetCacheVaryCookies
ParserFirstCallInit
UserGetLanguageObject
BeforeInitialize
SkinTemplateToolboxEnd
SkinTemplateOutputPageBeforeExec
translatewiki.net で翻訳を利用できる場合は、LanguageSelector 拡張機能の翻訳にご協力ください
使用状況とバージョン マトリクスを確認してください。

The LanguageSelector拡張機能はログイン利用者だけでなく匿名利用者に対してもインターフェイス言語の検知能力と、それぞれのページ上の利用者言語の選択に対してメニューを提供します。セレクタをwikページとシステムメッセージに埋め込むために、<languageselector>の追加タグも提供します。

言語の検知はHTTPリクエストの一部としてブラウザによって送られたAccept-Languageヘッダーに基づきます。利用者は明示的に望む言語を設定することもできます - これは匿名訪問者は個別のクッキーによって、ログイン利用者に対しては利用者プリファレンスで取り扱われます。

多言語の内容のための包括的なサポートに関して、LanguageSelectorMultilangPolyglot拡張機能を結びつけることができます。

注 注: 匿名利用者に対する言語検知とクッキーベースの言語プリファレンスは現在does not work with page caching (MediaWikiのファイルキャッシュ、squidのようなリバースHTTPプロキシ、など)。degrade キャッシュパフォーマンスを悪化させと不要にキャッシュをレンダリングして、閲覧者がランダムな言語でページを見ていることに導くことになる可能性があります。Mediawikiの内部キャッシュ(パーサー、リンク、クエリ、その他)は影響されません。

インストールするEdit

  • ダウンロードして、ファイルを extensions/ フォルダー内の LanguageSelector という名前のディレクトリ内に配置します。
  • 以下のコードを LocalSettings.php の末尾に追加します:
    require_once "$IP/extensions/LanguageSelector/LanguageSelector.php";
    
  •   完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。

構成Edit

(拡張機能のファイルをインクルードした後で)LocalSettings.phpで次の設定を指定できます:

$wgLanguageSelectorLanguages
選択のために利用者に示される言語です。NULL(デフォルト)に設定した場合、($wgExtraLanguageNamesによって)MediaWikiに知られるすべての言語が考慮されます。Polyglot拡張機能がインストールされ$wgPolyglotLanguagesが設定されている場合、その値はフォールバック(代替)として使われます。ほとんど無意味な100を超えるエントリーリストを選択するよりも$wgLanguageSelectorLanguagesをショートリストに設定することは利用者にとってより便利になることがあります。この変数は配列でなければならないので、次のように宣言できます:
$wgLanguageSelectorLanguages=array("en", "es", "pt");

The codes "en", "es" and "pt" stand for English, Spanish and Portuguese respectively.

$wgLanguageSelectorShowCode (since rev:55711)
whether to show language codes before the native language name. Default is false;
$wgLanguageSelectorDetectLanguage
匿名訪問者に対する言語検モードです。可能な値:
  • LANGUAGE_SELECTOR_USE_CONTENT_LANG: 検知モードを使用せず、常にwikiの内容言語を使います(これはMediaWikiの通常の振る舞いです)。
  • LANGUAGE_SELECTOR_PREFER_CONTENT_LANG: クライアントに承認された婆、wikiの内容言語、設定を使います。
  • LANGUAGE_SELECTOR_PREFER_CLIENT_LANG: それが$wgLanguageSelectorLanguagesにある場合、クライアントが望む言語を使う。
$wgLanguageSelectorLocation
言語セレクタウィジェットを投入する場所。言語セレクタをwikiのスタイルに導入するためにおそらくCSSスタイルを調整しなければならないことに注意して下さい。$wgLanguageSelectorLocationの可能な値:
  • LANGUAGE_SELECTOR_MANUAL: 言語セレクタを表示しない。自動検知機能のみを使いたい、もしくは限られたページ上のみでセレクタを使いたい、適切なシステムメッセージを設置することで手動で設置したい場合に便利です。
  • LANGUAGE_SELECTOR_AT_TOP_OF_TEXT: ページ内容のトップ上でドロップダウンボックスを設置する。これはデフォルトですが、but it looks quite ugly without extra CSS rules applied.
  • LANGUAGE_SELECTOR_IN_TOOLBOX: サイドバーのツールボックスの底にドロップダウンボックスを設置する。これはMonoBookスキンもしくはMonoBookTemplateToolboxEndフックを明示的にサポートするスキンでのみ動作をします。
  • LANGUAGE_SELECTOR_AS_PORTLET: インターランゲージリンクが表示される方法と同じように、サイドバーのポートレットとして言語セレクタを設置します。MonoBookスキンで動作します。いくつかのSkinTemplateベースのスキンでも動作するでしょう。
  • LANGUAGE_SELECTOR_INTO_SITENOTICE: sitenoticeテキストの終わりにドロップダウンボックスを設置する。追加のCSSを適用しないと不細工です。Works with MonoBookスキンで動作します。いくつかのSkinTemplateベースのスキンでも動作するでしょう。
  • LANGUAGE_SELECTOR_INTO_TITLE: ページタイトルの終わりでドロップダウンボックスを設置します。追加のCSSを適用しないと不細工です。MonoBookスキンで動作します。いくつかのSkinTemplateベースのスキンでも動作するでしょう。
  • LANGUAGE_SELECTOR_INTO_SUBTITLE: サブタイトルの終わりにドロップダウンのボックスを設置します。追加のCSSを適用しないと不細工です。MonoBookスキンで動作します。いくつかのSkinTemplateベースのスキンでも動作するでしょう。
  • LANGUAGE_SELECTOR_INTO_CATLINKS: カテゴリーボックスの終わりにドロップダウンのボックスを設置します。追加のCSSを適用しないと不細工です。MonoBookスキンで動作します。いくつかのSkinTemplateベースのスキンでも動作するでしょう。

Example:

$wgLanguageSelectorDetectLanguage = LANGUAGE_SELECTOR_USE_CONTENT_LANG;
$wgLanguageSelectorLocation = LANGUAGE_SELECTOR_IN_TOOLBOX;

関連項目Edit