多言語サイトの構築に役立つ MovableType プラグイン:Translator

Posted by
ぴろり
Posted at
2010/03/10 19:29
Trackbacks
関連記事 (0)
Post Comment
コメントできます
Category
プラグイン カテゴリ

 例えば、日本語と英語のブログを管理している場合、記事の執筆者を表示するために<$MTEntryAuthorDisplayName$>テンプレートタグをそのまま使うことができません。なぜなら、ユーザ設定画面で表示名を「ぴろり」と設定してしまうと、英語サイトで<$MTEntryAuthorDisplayName$>テンプレートタグは「ぴろり」と日本語で表示してしまうからです。Translator プラグインでは言語毎の辞書を事前に登録しておき、表示する際に適切な翻訳が行われるようにします。

このエントリーをはてなブックマークに追加  

使い方

 MovableType の plugins フォルダにコピーしてください。その後、システムのプラグイン設定と、ブログ毎にプラグインの設定画面から、言語毎の辞書を登録します。辞書は以下の書式に従って、一行に一つの翻訳を半角縦棒(|)区切りで記述します。システムのプラグイン設定画面で設定した辞書は全てのブログにおいて有効になります。ブログごとのプラグイン設定画面で設定した辞書は、システム設定の辞書に追加して適用されます。

ぴろり|ピロリ|Piroli
管理者|かんりにん|Administrator
翻訳前の単語|翻訳後の単語A|翻訳後の単語B

 翻訳を行うには、translator グローバルフィルタを適用してください。フィルタに与えるパラメータは 2 以上の数値とし、辞書に登録された文字列を | で区切った前から n 番目の文字列に置換されます。つまり、パラメータを 2、3、… と変更することで、一つのテンプレートで複数言語に対応することができます。

<$MTEntryAuthorDisplayName$> → "ぴろり"
<$MTEntryAuthorDisplayName translator="1"$> → "ぴろり" (変換されない)
<$MTEntryAuthorDisplayName translator="2"$> → "ピロリ"
<$MTEntryAuthorDisplayName translator="3"$> → "Piroli"

 translator には数値でパラメータを与えますが、システムのプラグイン設定で、エイリアス名を指定することができます。例えば、エイリアス設定に以下のように設定されていた場合

ja|en|de
<$MTEntryAuthorDisplayName translator="ja"$> → "ぴろり" (変換されない)
<$MTEntryAuthorDisplayName translator="en"$> → "ピロリ"
<$MTEntryAuthorDisplayName translator="de"$> → "Piroli"

いろいろ

  • MovableType 3, 4, 5 で動作します
  • ライセンスは LGPL とします

ダウンロード

このエントリーをはてなブックマークに追加  



関連記事/トラックバック

関連記事/トラックバックはまだありません

この記事にトラックバックを送るには?

コメントを投稿する

 
 (必須, 匿名可, 公開, トリップが使えます)
 (必須, 匿名可, 非公開, Gravatar に対応しています)
 (必須)
スパム コメント防止のため「投稿確認」欄に ランダムな数字 CAPTCHAについて を入力してから送信してください。お手数ですがご協力のほど宜しくお願いいたします。