Drupal 7の多言語

この記事では、サイトを15分で多言語化する方法を説明します。

したがって、Drupal 7でコンテンツを多言語にするには、2つの方法があります。

1) 国際化モジュールとそのサブモジュール

2) エンティティ翻訳モジュール+ タイトルモジュール

ここでそれらを検討します。



準備する



何かをする前に、サイトに言語を追加する必要があります。 これは、「admin / config / Regional / language / add」ページで実行できます。





ページで有効にします:「admin / config / Regional / language」





また、言語を決定する方法を選択する必要があります。URLから取得することを好みます。 設定では、URLのどの部分から言語を取得するか(プレフィックスまたはサブドメイン)を指定できます。デフォルトでは、プレフィックスがあります。

「管理/構成/地域/言語/構成」





最初の方法



国際化モジュールはD6に登場し、さまざまなタイプのコンテンツを翻訳できるようになりました。 ノード変換の例を使用して検討します。 ほとんどのコンテンツを構成しています。



モジュールのインストール


モジュールをインストールして有効にするには、便利なツールであるdrushを使用します。

drush dl i18n





drush en -y i18n





ノードを変換するため、サブモジュールを有効にする必要があります。

drush en -y i18n_node





モジュールはオンで、準備ができています。



コンテンツタイプの設定


CTを公開するための設定に進み、「有効、翻訳あり」アイテムを選択します。





多言語設定で、適切なオプションを選択します。





ご覧のとおり、言語の選択に関連する新しいフィールドがフィールドのリストに表示されています。





ノードの作成と翻訳


フィールドに入力し、目的の言語を選択して保存します。





これで、ノード編集ページに、新しい翻訳タブが表示されました。





翻訳ページでは、新しい翻訳を追加するか(1)、既存の別のノードを翻訳として指定するか(2)を選択できます。 なぜなら 翻訳が完成していないので、追加します。





ノード作成フォームが開き、その言語のみが既に設定されており、フィールドは無効になっています。





まとめ


異なる言語を持つ2つのノードがあります。 翻訳ノードには元のノードへのリンクがあります。



コンテンツの重複があるため、この方法は最適ではないと思います。

したがって、これを回避する2番目の方法を検討します。



第二の方法



モジュールのインストール


drush dl title entity_translation





drush en -y title entity_translation







モジュールのセットアップ


「admin / config / Regional / entity_translation」ページで、翻訳するエンティティのタイプを選択できます。





コンテンツタイプの設定


CTを公開するための設定に移動し、「フィールド変換を有効にした」項目を選択します。





次に、フィールドのリストで、タイトルを通常のフィールドに置き換える必要があります(これにより、タイトルモジュールが許可されます)。





ここで、翻訳可能なフィールドを選択する必要があります(タイトルはデフォルトで選択されています)

「admin / structure / types / manage /%CT_name%/ fields /%field_name%」ページで、フィールド変換を有効にする必要があります。





ノードの作成と翻訳


ノードの作成は、最初の方法で作成するのと違いはありません。フィールドに入力して言語を選択するだけです。 「言語ニュートラル」のままにすると、翻訳は利用できなくなります。

[翻訳]タブが、新しく作成されたノードの編集ページに表示されます。

ここで、ノードがすでに翻訳されている言語を確認し、残りの言語に翻訳できます。





翻訳に使用できるフィールドに入力します。翻訳を公開するための設定もページにあり、代替URLを指定できます。





まとめ


その結果、1つのノードに2つの変換オプションがあります。

英語:





ドイツ語:








All Articles