WordPress はデフォルトでは多言語 (バイリンガル・マルチリンガル) ブログには対応していません。しかし、WordPress コミュニティによって開発されたプラグインを活用することによって多言語ブログを作成することもできます。
多言語ブログを作成するということは、基本的には複数の言語で WordPress をインストールし、プラグインで各言語をスイッチするということです。多くのプラグインでは、.mo 言語ファイルを手動でインストールする必要があります。詳しくは言語ファイルのインストールをご覧ください。
無料の WPGlobus、Polylang、プラグインは通常 (スタンドアローン) の WordPress にインストールでき、Multisite Language Switcher や Zanto、 Multilingual Press はマルチサイト WordPress (言語ごとに1つのブログ) で利用できます。有料の WPML プラグインもあります。
さまざまなタイプの多言語化プラグイン
多言語化プラグインにはいくつか基本的なタイプがあります。
- 言語ごとに1つの投稿を管理する方法 (例: WPML【有料】、xili-language、Polylang、Bogo)。翻訳された投稿はお互いに関連付けられ、ある投稿の翻訳投稿がどれなのかが表示されます。
- すべての翻訳文をひとつの投稿内に含める方法 (例: qTranslate)。
- 投稿のコンテクストを使う代わりに、生成されたページ上で翻訳を管理する方法 (例: Transposh、Global Translator)。
- 外部の翻訳サービスへリンクするプラグイン (例: Google AJAX Translation)。
- Multisite Language Switcher や Multilingual Press、https://wordpress.org/extend/plugins/zanto/ のようなプラグインでは、言語ごとに個別の WordPress マルチサイトインストールで、ピンバックを使って投稿をリンクします。
各言語1投稿
各言語に個別の投稿を割り当てるタイプの多言語化プラグインでは、ユーザーが投稿の言語を選択し、新規投稿として翻訳をついかできます。固定ページ、タグ、カテゴリーについても同様です。
その後、別言語バージョンの同一コンテンツがお互いに関連付けられ翻訳グループを形成します。このグループ分けにより、ユーザーが表示言語を切り替えられるようになります。
良い点
- 投稿のデータベースコンテンツに変更が加わらない (プラグインのインストール・アンインストールが簡単) 。
- デフォルトですべてが翻訳される。投稿にカスタムフィールドがある場合、投稿に付随しているため言語との関連付けがしやすい。
- 一部のプラグインでは、テーマの表示項目用の言語ファイル (.mo) を含んでいます。WordPress のローカリゼーションは GNU gettext 技術をベースとしていますので、投稿の言語がフランス語の場合、テーマの表示言語も切り替えることができます。ファイルにはサイトの特定の項目 (カテゴリータイトル、ウィジェット、リンクなど) を含めて完成させることができ、すべてを再度翻訳する必要がありません。
- その他のコンテンツを分析するようなプラグイン (関連投稿プラグインなど) も影響なく動作します。
悪い点
- 構造が複雑化してしまう点。このタイプのプラグインは多くの WordPress 関数にフックする必要があり、言語に一致するコンテンツのみを返すようフィルタ―しなくてはなりません。
- 一部のプラグインでは追加のデータベーステーブルが必要になります。通常、翻訳グループを保存するために使われます。新しいプラグインの多くは、代わりにカスタムタクソノミーまたは投稿メタフィールドを使っています。
全言語1投稿
個別投稿にすべての言語の翻訳コンテンツを含めるタイプの多言語プラグインでは、言語メタタグを使って別の言語のコンテンツを認識します。投稿が表示される前にまず処理が行われ、有効な言語のコンテンツのみが表示されます。
良い点
- 各言語のバージョンを表示しながら翻訳する処理を簡単に実行できる。
- 追加テーブルの必要がなく、WordPress 内を変更するような部分が少ない。
悪い点
- 多言語コンテンツを作成するために、プラグインがフックしない部分にユーザーが手動で言語タグを入力する必要がある。
- データベース内の多言語コンテンツをクリアしなくてはならず、アンインストールが複雑になる場合がある。
生成ページ上での翻訳管理
WordPress が生成したコンテンツページを使い、そのページ上で翻訳を行うプラグイン。WordPress 上であるページが表示された際、プラグインが (オンラインまたはオフラインで) 翻訳バージョンのページの作成を試みる。後ほど翻訳を手動で変更・更新できる。
良い点
- インストールがシンプルで、ページ上のどんなコンテンツでも翻訳が可能。
- 簡単に翻訳を編集できる。
悪い点
- 自動翻訳は不十分で、サイト上のページが悪く翻訳されるかもしれない。
- コンテンツと翻訳が密接に関係しており、元コンテンツの変更によって翻訳が壊れてしまう可能性がある。
外部の翻訳サービスへのリンク
通常オンライン翻訳サービス (Google Translate など) へのショートカットリンクを作成するウィジェットを表示するためのプラグインでは、サードパーティのエンジンによってオンデマンドで自動翻訳が行われる。
良い点
- インストールがシンプルで、ページ上のどんなコンテンツでも翻訳が可能。
- 翻訳処理が自動的なものであることがかなり明らかで、ユーザーの期待値が低くなる。
悪い点
- 自動翻訳は不十分で、サイト上のページが悪く翻訳されるかもしれない。
- 翻訳結果を編集する機能がない場合、コンテンツパブリッシャーとして質の高い翻訳コンテンツを提供するのが難しくなる。
各言語1つの WordPress インストール
各言語に1つのサイトを作成する (例: WordPress マルチサイト版を使うなど) 方法で、すべてのサイトに同一のテーマ・プラグインを適用する必要がある。翻訳投稿を保存する際に元のソースとなる投稿にピンバックが送信され、システム内で翻訳投稿の関連性情報のテーブルを別途作成・管理する。
良い点
- 各言語サイトは通常の投稿を含む通常の WordPress インストールになっており、投稿メタ情報および外部データベースを翻訳データに利用している。
- プラグインを無効化しても、(翻訳についての情報はないが) 元のコンテンツが問題なく表示される。
悪い点
- 複数サイトを持つことで、余分な管理コストがかかる。
言語ネゴシエーション
言語ネゴシエーションとは、ユーザーが表示する言語をどうやって決定するかを意味しています。
多言語コンテンツの保存方法に関係なく、多言語化プラグインでは表示言語の決定も行う必要があります。
通常、表示言語は URL に基づいて決定されます。言語情報のコード化に使われる代表的な URL 方針は以下のとおりです。
- 言語名を変数として含める。example.com/?lang=en や example.com/?lang=ja など。
- 言語名のバーチャル「ディレクトリ」を含める。example.com/en/ や example.com/ja/ など。
- 言語ごとにサブドメインをふる。www.example.com や ja.example.com など。
適切な多言語ソリューションを選択するために
あなたのニーズに対して最も適切な多言語化プラグインを選択するには時間がかかることもあります。WordPress プラグインディレクトリの多言語化プラグイン (Multilingual タグ) の一覧を見てみてください。
コンテンツ戦略、データモデル、ブログ投稿・固定ページの総数、サイト訪問者の期待する動作やエクスペリエンスなどによって、複数のやり方があります。さらに、WordPress マルチサイト版の多言語化にはある程度サーバー管理についての知識が必要となるでしょう。
いずれにしても、多言語化プラグインのインストールの際にはどんなサイトであっても大きな変更を加えることになります。まずはテストサイトを作成し、必要なプラグインやテーマなどがすべてきちんと動くかどうかをチェックしておくのをおすすめします。多言語化プラグインはデータベースに大きな変更を加えることがあるため、実験の前にはデータベースバックアップを取ることも重要です。
関連
外部資料
- 2015年 失敗しない! WordPress多言語サイト制作で 絶対に知っておきたいこと – WordCamp Kansai 2015 でのプレゼンスライド。
この記事は役に立ちましたか ? どうすればさらに改善できますか ?
フィードバックを送信するにはログインする必要があります。