すべてのWordPressテーマとプラグインはWPMLと適合可能です。WPMLとの適合性を調べ、コードを多言語用に調整するにはこのチュートリアルをお読みください。

このチュートリアルは様々なテーマを多言語用に設定する方法を説明します。 テーマに調整と変更を行うには1-2時間程かかります。

終了したら、XML言語設定ファイルを作成し、テーマをルートディレクトリに追加してください。 この手順により他の設定を行うことなく、テーマを多言語サイトに運用できるようになります。

内容

  1. WPMLコンポーネントのインストール
  2. ケーススタディ – WooThemes Resort Theme 
  3. ヘッダーの翻訳
  4. メニューの翻訳
  5. WooThemes Sliderの翻訳
  6. カスタムテーマとプラグイン要素の翻訳
  7. 投稿文の翻訳
  8. ウィジェットの翻訳
  9. フッターの翻訳
  10. テーマ用の言語設定ファイル作成
  11. ハードコード化されたストリング用のGetTextサポート
  12. ヒントとデバグのアイデア

1.WPMlコンポ―ネントのインストール

WPML には幾つかのコンポーネントがあります。 テーマ適合に必要なものもあれば、サイトコンテンツを管理する管理者用のものもあります。

テーマを完全に翻訳するには WPML coreWPML String TranslationWPML Translation Managementを含むWPMLの中核コンポーネントをアクティベートしてください。

WPML必須コンポーネント
WPML必須コンポーネント

これらのコンポーネントはWPMLアカウントからダウンロードをクリックすると入手できます。

もちろんその他のWPMLコアやアドオンのコンポーネントの詳細もお読みください。

2. ケーススタディ – WooThemes Resort Theme

WooThemesのResortにより作成されたウェブサイトの例を見てみましょう:

サンプル-ホームページ

このページのそれぞれの要素の説明をご覧になれば、WPMLがさまざまなテーマやプラグインを翻訳できることが分かります!

3. ヘッダーの翻訳

テーマやプラグインヘッダーはWordPress一般設定から来ています:

general-settings
設定->一般

これは投稿文の一部ではないため、WPMLのストリング翻訳を使用して翻訳します。 WPML->String Translationを開き、ストリングの内容 (サイトの題名) を検索し、翻訳します。

string-translation-example
WPML->ストリング翻訳

これを実行するのにテーマやプラグインに何かする必要はありません。 WPML が自動的に用意します。 今回はサイト名の翻訳方法を紹介しましたが、WPMLのストリング翻訳は他たくさんのテーマやプラグイン翻訳に使用できます。

4. メニュー翻訳

WPMLは何もしなくてもWordPressメニューを翻訳します。 テーマが標準のWordPressメニューシステムを使用する限り、WPMLがメニューを翻訳します。

メニュー翻訳コントロール
メニュー翻訳コントロール

Appearance->Menusを開くと、WPML のメニュー翻訳コントロールが表示されます。 操作方法についてはメニュー翻訳の詳細をお読みください。

5. WooThemes Slider (カスタム投稿タイプ使用)の翻訳

このテーマ例はスライダーを「slide」と呼ぶCPTを使用します。 この場合WPMLはほとんど設定を行わなくても簡単に翻訳できます。

まずWPMLに「スライド」カスタム投稿タイプは多言語であることを教えます。 WPMLはこのアイテムをユーザーが翻訳できるように設定します。

WPMLがなぜ同じサイトのあるコンテンツを多言語用とし、他のコンテンツに言語情報を設定しないのか疑問に思う方もいらっしゃるでしょう。良い質問です!

コンテンツが多言語の場合、WPMLはそれをフィルターし、現在の言語で結果を戻します。 しかし全言語に同じコンテンツを残したい場合もあります。 例えば、全言語に(同じ題名付きの)同じスライドを表示したい場合、スライドCPTを翻訳不可能にします。 原則的にはスライドは翻訳が必要なため、各言語のスライドは別々の題名を持っています。

WPMLのGUIでスライドを編集し、一番下までスクロールします。 ‘Multilingual Content Setup‘ (多言語コンテンツ設定)部分が見えます。

Multilingual Content Setup 
Multilingual Content Setup

チェックボックス内をクリックし、CPTを翻訳可能にしてApplyを押します。

スクリーンショットのグレー部分が見えますか? これは偶然ではありません。 グレー部分はテーマまたはプラグインに言語設定ファイルが用意されていることを示しています。

言語設定ファイルはWPMLにテーマの全てを教えます。 これには翻訳可能なCPTとタクゾノミー、翻訳が必要なカスタムフィールドとストリングを含みます。

6. カスタムテーマまたはプラグイン要素の翻訳

多くのテーマまたはプラグインはwp_options表にテキストを保存する独自の機能を持っています。 Resort Introductory Messageはその一例です。

Resortの Introductory Message
Resortの Introductory Message

テーマあるいはプラグインがこれらのテキストを wp_options表に保存するので、私たちはWPMLに翻訳を指示します。 言語設定ファイルにこの情報を追加すると、wp_optionsのどのアイテムを翻訳するかWPMLに指示できます。

このテクニックはキーやオプションが(ほとんどのテーマのように)固定されている場合、有効です。 あなたのテーマが配列エントリを使用し、ユーザーの入力とともに増加する場合、これらのエントリを動的に登録する必要があります。 これにはWPMLの icl_register_stringicl_t をご使用ください。

7. 投稿文の翻訳

WPMLはユーザーにコンテンツを容易に翻訳させます。 ポストエディット画面は新しい翻訳や既存の翻訳を作成するWPMLの翻訳コントロールを含みます。

翻訳の追加
翻訳の追加

これを実行するのにテーマやプラグインに何かする必要はありません。 翻訳コンテンツはWPMLの中心機能です。

ここで調べることはテーマがアウトプットに追加するテキストが翻訳可能かどうかです。 例えば、このスクリーンショットのハイライトされたテキストはgettextコールにラップされています。

テーマテキスト
テーマテキスト

GetTextを初めて使用する方は当社のテーマテキスト翻訳によくある質問をご覧ください。

8. ウィジェットの翻訳

WPMLはテキストウィジェットのコンテンツを翻訳可能にします。 その他のウィジェットの題名も翻訳します。 テーマやプラグインがカスタムウィジェットを作成する場合、これらの題名を標準のWordPressフィルターにかけてください。 WPMLはストリング翻訳画面でウィジェットの題名を翻訳可能にします。

9. フッターの翻訳

このテーマはフッターテキストを保存するカスタム管理画面を持っています。

フッターテキスト
フッターテキスト

テーマあるいはプラグインはその他のテキストと同様にフッターテキストをwp_options表に保存します。 これらのエントリを言語設定ファイルに追加し、WPMLに翻訳するように指示します。

10. テーマ用の言語設定ファイル作成

テーマが完全にWPMLに適合したら、他の人がテーマを使用して簡単に多言語サイトを運用できるようにする必要があります。

テーマ用に言語設定ファイルを作成し、これをテーマのルートディレクトリに保存します。 このファイルはどのカスタム投稿タイプ、タクゾノミー、フィールド、オプションが翻訳可能かWPMLに教えます。

この小さなXMLファイルはクライアントの時間を節約し、彼らが多言語サイトを簡単に運用することを可能にします。 翻訳対象物を設定する必要がなく、すべてをスムーズに作動することができます。 サポート業務も楽になります。

11. ハードコード化されたストリング用のGetTextサポート

WPMLに直接関係することではありませんが、テーマ内のすべてのストリングはGetTextコールでラップする必要があります。 これによりハードコード化されたテキストはサイトで適切な言語に表示されます。 テーマ管理内のテキストとフロントエンドページに表示されるテキストの両方にこれを行ってください。

多言語用に準備されているかどうか関係なく、すべてのWordPressテーマとプラグインはGetTextを使用し、ハードコード化されたストリングを翻訳すべきです。 WordPress初期設定テーマはGetTextを非常に正確に使用します。初心者にとってとても良い参照になります。

GetTextコールでテキストをラップするのは大仕事です。 経験があまりない、またはコードのローカリゼーションのデバグに助けが必要な方は、以下をご覧ください:

WPMLはGetTextを完全に統合します。 ハードコード化されたストリングをGetTextコールでラップすると、WordPress管理からWPMLのストリング翻訳画面を使用して直接翻訳することができます。 WPMLは.poファイルをエクスポート・インポートするため、WordPerss内からすべてのテーマストリングを翻訳することができます。

12. ヒントとデバグのアイデア

すでにWPMLベーシックを習得され、テーマやプラグインの適合性に取り組まれている方は、テーマデバグ適合性ガイドをご覧ください。テーマを簡単にWPMLに適合させるヒントやアイデアが見つかります。

ヘルプが必要な方はお問い合わせください。 テクニカルサポートフォーラムを閲覧し、問題を説明していただければ直ちにご支援いたします。