0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Drupal 多言語化

Posted at

こちらの続きシリーズです。

今回は多言語対応です。

ユーザガイドは、第10章 サイトを多言語化する。

このページがタイトル以外多言語化されていませんが・・・

こちらを見ながらがやりやすそう。

地域と言語の設定

サイト/admin/config/regional/language

初期状態では、言語としては「Japanse」しかありませんでしたので、「言語を追加」で、「英語」を追加します。

image.png

ついでに「Chinese, Simplified」、「Chinese, Traditional」も追加しました。

image.png

日本語が一番翻訳されているのか・・・

何が翻訳されているかは、ユーザーインタフェースの翻訳

サイト/admin/config/regional/translate

で見ることができ、未翻訳の言葉を翻訳追加することもできます。

この時点ではまだサイトに変更はないです。

翻訳対象の指定

次に、「コンテンツの言語」の設定で、 コンテンツ、カスタムブロック、カスタムメニューリンク にチェックを追加します。

サイト/admin/config/regional/content-language

チェックを付けると下に追加設定の入力欄が表示されるので、「作成・編集ページに言語セレクターを表示」にチェックします。

image.png

ユーザガイドでは説明がないように思いますが、この時、「機能拡張」の「多言語設定」もしておく必要があるようです。

image.png

4つともチェックをつけます。

そうすると、先程の「コンテンツの言語」の設定の撹乱の左にチェックボックスが現れます。
チェックすると、どのフィールドを対象とするかの選択欄が表示されるので、掲載、タイトル、本文 にチェックします。

image.png

これにより、各コンテンツの編集画面で、「翻訳」タブが表示されるようになります。

image.png

翻訳文作成

これは「ご案内」というコンテンツの編集画面ですが、例えば、home画面は、内容からで作成しているので、それぞれの翻訳を追加すると、こんな感じになります。

image.png

コンテンツ自体は、それぞれできるんですね。良いような悪いような。
image.png

言語でフィルタできるので、害はない??

では、ご案内の各翻訳を作成してみます。
そうすると、サイト名の直後に、en とか、zh-hansをつければ、こんな表示になります。

image.png

image.png

これはOKです。
しかし、Blog のリンクを押してみると、こんな感じになってしまいました。

image.png

ブログを全部表示する形になっているので、他言語の同内容のものも表示されてます。

image.png

image.png

ビューの設定でフィルターの条件を追加したら、OKでした。

その他、コンテンツタイプなども、自分で定義したフィールド名を、それぞれ翻訳していく必要があります。

image.png

言語切り替えの仕組み

さて、翻訳文を作って、URLで切り替えができるようになった。
ただ、URLに自分で「en」を付けるなんてことはできない。

そもそも、どの言語で表示するかの判定は、地域と言語>言語 の「判定と選択」で行います。

サイト/admin/config/regional/language/detection

image.png

例えば「ブラウザー」とかも指定しておけば、自動判定はされるようになりますが、確認用の意味も含めて、切り替えの仕組みは欲しい。これは、自分で作らないといけなそうです。

プルダウンをヘッダにつけられると良いかなと思いますが・・・

若干中途半端ですが、一旦ここまで。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?