言語や地域の URL に hreflang を使用する

ユーザーに適した言語や地域の URL が表示されるようにする

複数の言語でコンテンツを提供するウェブサイトや地域別にコンテンツを提供するウェブサイトの場合、Google では rel="alternate" hreflang="x" 属性を使用して検索結果で適した言語や地域の URL を返します。

Creating multi-regional and multilingual sites

次のような場合に、rel="alternate" hreflang="x" を指定することをおすすめします:

  • ナビゲーションやフッターなど、テンプレートのみを翻訳し、コンテンツの大部分は 1 つの言語を使用する場合。フォーラムなど、ユーザー生成コンテンツを掲載するページでは、これが一般的です。
  • コンテンツが 1 つの言語で書かれていて、コンテンツの大部分はほとんど同じであるが、地域ごとにわずかに変化がある場合。たとえば、アメリカ、イギリス、アイルランドのユーザーをターゲットにした英語のコンテンツです。
  • サイトのコンテンツをすべて翻訳する場合。たとえば、各ページについてドイツ語バージョンと英語バージョンの両方があるような場合です。

言語アノテーションを使用する

たとえば、http://www.example.com/ では英語のページを、http://ja.example.com/ では日本語の代替ページを公開しているとします。日本語バージョンの URL を、英語バージョンのページに対応する日本語のページであると Google に示すには、次の 3 つの方法があります:

  • ヘッダーの HTML リンク要素: http://www.example.com/ の HTML <head> セクションに、このウェブページの日本語バージョン(http://ja.example.com/)を指す link 要素を次のように追加します:
    <link rel="alternate" hreflang="ja" href="http://ja.example.com/" />
  • HTTP ヘッダー: HTML 形式以外のファイル(PDF など)を公開する場合は、HTTP ヘッダーを使用して、ある URL の別の言語バージョンを次のように指定できます:
    Link: <http://ja.example.com/>; rel="alternate"; hreflang="ja"
  • サイトマップ: マークアップを使う代わりに、サイトマップで言語バージョン情報を送信できます。

URL に複数の言語バージョンがある場合は、そのセット内の各言語のページで rel="alternate" hreflang="x" を使用して、そのページの言語を含むすべての言語バージョンを認識させる必要があります。日本語のページでは、rel="alternate" hreflang="x" リンクに加えて、さらにフランス語と英語のバージョンを指すリンクを追加する必要があります。同様に、英語とフランス語のサイトにも、それぞれ同じフランス語、英語、日本語バージョンへの参照を追加する必要があります。

指定の URL と同じドメインで複数言語の URL を指定するか、異なるドメインの URL を使用することができます。

同じ言語でも地域が違うユーザーのために URL が複数ある場合は、地理的に未特定のユーザー向けの汎用的な URL も提供することをおすすめします。たとえば、アイルランド(en-ie)、カナダ(en-ca)、オーストラリア(en-au)在住の英語を使うユーザー向けの特定の URL はあるが、他のすべての英語を使うユーザーには汎用的な英語(en)のページを、それ以外のユーザーにはホームページを表示する場合、英国在住などの検索ユーザー向けに汎用的な英語(en)ページを指定する必要があります。このような場合は、サイトマップ ファイルまたは HTML リンク タグを使用して、このページ セットに次のようにアノテーションを追加できます:

<link rel="alternate" href="http://example.com/en-ie" hreflang="en-ie" />
<link rel="alternate" href="http://example.com/en-ca" hreflang="en-ca" />
<link rel="alternate" href="http://example.com/en-au" hreflang="en-au" />
<link rel="alternate" href="http://example.com/en" hreflang="en" />

言語や国のセレクタまたは自動的にリダイレクトされるホームページでは、同様に hreflang 値が「x-default」のアノテーションを追加する必要があります:
<link rel="alternate" href="http://example.com/" hreflang="x-default" />

サポートされる言語の値

 

属性の値には、代替 URL の言語を hreflang 属性の値には、代替 URL の言語を ISO 639-1 形式で、オプションで地域を ISO 3166-1 Alpha 2 形式で指定します。次に例を示します:

  • de: ドイツ語コンテンツ、特定の地域はなし
  • en-GB: 英語コンテンツ、イギリスのユーザー向け
  • de-ES: ドイツ語コンテンツ、スペインのユーザー向け

国コードを単独で指定しないでください。Google では、国コードから言語を自動的に取得しません。タグ付けを簡素化したい場合は、言語コードを単独で指定できます。言語の後に国コードを追加すると、そのページを特定の地域に限定できます。次に例を示します:

  • be: ベラルーシ語、地域に依存しない(ベルギーではない
  • nl-be: ベルギーのオランダ語
  • fr-be: ベルギーのフランス語

1 つの言語に複数の文字体系がある場合は、国から適切な文字体系が取得されます。たとえば、zh-TW ユーザー向けに zh-TW を使用する場合、文字体系は自動的に判断されます(この場合、繁体中国語)。ISO 15924 を使用して、次のように文字体系を明示的に指定することもできます:

  • zh-Hant: 中国語(繁体)
  • zh-Hans: 中国語(簡体)

また、文字体系と地域を組み合わせて指定することもできます。たとえば、台湾のユーザー向けに中国語(簡体)を指定するには zh-Hans-TW を使用します。

予約された値「x-default」は、1 つの言語や地域に固有ではない言語セレクタまたは言語リダイレクタ(例: クリックできる世界地図を表示するホームページ)を示すのに使用されます。

ありがちなミス

重要: 実際に有効である hreflang 値を指定してください。2 つのありがちなミスについては、特にご注意ください:

一般に、ウェブマスター ツールにサイトを登録することをおすすめします。これにより、アノテーションが誤っている場合にメッセージを受け取ることができます。

アノテーションの使用例

Example Widgets 社は、アメリカ、イギリス、日本のユーザーを対象にしたウェブサイトを所有しています。URL は次のとおりで、ほとんど同一のコンテンツですが、地域ごとに多少の違いがあります:

  • http://www.example.com/ 対象としている言語や地域がないデフォルト ページです。ユーザーが言語や地域を選択できるセレクタが存在する場合もあります。
  • http://en.example.com/page.html 英語のホームページです。アメリカから各国に出荷する際の代金に関する情報が含まれています。
  • http://en-gb.example.com/page.html 英語バージョンで価格がイギリス ポンドで表示されます。
  • http://en-us.example.com/page.html 英語バージョンで価格が US ドルで表示されます。
  • http://ja.example.com/page.html コンテンツが日本語のバージョンです。

rel="alternate" hreflang="x" は、サイト レベルではなくページ レベルで使用されるので、ページ セットのそれぞれ(ホームページを含む)を適切にマークアップする必要があります。コンテンツのバリエーションや言語/地域は、必要な数だけ指定することができます。

日本語で Google 検索する場合はページの日本語バージョンを表示し、英語で google.com から検索する場合は en-us バージョンを表示し、英語で google.co.uk から検索する場合は en-gb バージョンを表示するには、rel="alternate" hreflang="x" を使用して代替言語バージョンを指定します。

それぞれに rel="alternate" hreflang="x" リンク要素のセットを追加して、各 URL の HTML を更新します。特定の言語や地域を対象としていないデフォルト ページには、rel="alternate" hreflang="x-default" を追加します:

<link rel="alternate" hreflang="x-default" href="http://www.example.com/" />
<link rel="alternate" hreflang="en-gb" href="http://en-gb.example.com/page.html" />
<link rel="alternate" hreflang="en-us" href="http://en-us.example.com/page.html" />
<link rel="alternate" hreflang="en" href="http://en.example.com/page.html" />
<link rel="alternate" hreflang="ja" href="http://ja.example.com/seite.html" />

このマークアップにより、Google のアルゴリズムは、それぞれのページが互いに代替バージョンであることを認識します。

 

この記事はどの程度役に立ちましたか?

フィードバックが記録されました。ご協力ありがとうございました。
  • まったく役立たなかった
  • あまり役立たなかった
  • まあまあ役立った
  • かなり役立った
  • とても役立った