多言語SEOに有効なHreflangとは?設定方法、実証結果を解説

更新日: by Heysho

SEO対策とは?

最近、英語ブログを開始しました。SEOに詳しい知人に確認してもらったところ、「Hreflangが設定されていない」と指摘されたため、早速設定作業を行いました。

本記事では、その設定過程と調査内容を忘備録としてまとめます。主な内容は以下の通りです。

  • Hreflangとは
  • Hreflang未設定時に起こりうる問題
  • Hreflangの設定方法
  • WordPressでの設定方法
  • Hreflang設定による改善効果(実体験)

Hreflangは多言語サイトのSEO対策として非常に効果的です。特にグローバル展開を行う企業のSEO担当者にとって役立つ情報となるでしょう。

それ以外の方にも参考になる内容ですので、ぜひ最後までお読みください。

Hreflangとは

Hreflangは、多言語サイトのSEO対策に有効な手法の一つです。同一コンテンツの異なる言語バージョンに対して、「これは日本語のページ」「これは英語のページ」とGoogleに明示するためのタグです。

参考 hreflangタグとは何か調べてみました | satoyan419.com

参考 「hreflang」タグにSEO効果はあるか? | SEO Pack

Hreflang未設定時に起こりうる問題

弊社のブログ(日本語版と英語版)を例に、Hreflang未設定時の問題点を検証しました。

理想的には、「HEYSHO」というブランド名で検索された場合、日本国内からの検索では日本語サイトが、海外からの検索では英語サイトが上位表示されるべきです。

しかし、現状は以下のような結果となっています。

アメリカにおける「HEYSHO」の検索結果

[Image: アメリカで「HEYSHO」とググった時の検索結果]

参考 アメリカでGoogle.comで「heysho」と検索した時の検索画面

日本語版サイトが7位、英語版サイトが8位にランクインしています。

これは「heysho」というキーワードに対する評価が分散している状態です。Hreflangを設定することで、英語圏ユーザーには英語版サイトが優先表示されるようになることが期待できます。

補足:日本国外からのGoogle検索結果は、Search Latteなどのツールで確認できます。

Hreflangの設定方法

弊社の記事を例に、具体的な設定方法を解説します。

以下の2つのページにHreflangを設定します。

これにより、同一コンテンツの多言語版が存在することをGoogleに明示します。

具体的には、<head>内に以下のタグを記述します。

日本語ページの場合
<link rel="alternate" href="https://heysho.com/en/how-to-grow-blog-quick/" hreflang="en" />
英語ページの場合
<link rel="alternate" href="https://heysho.com/how-to-grow-blog-quick/" hreflang="jp" />

WordPressでの設定方法:プラグイン「hreflang tags lite」の利用

Hreflangタグはすべての記事に設定する必要があるため、手動での設定は非効率です。プラグインの利用がおすすめです。

複数のプラグインを試した結果、「hreflang tags lite」が最も使いやすいと判断しました。

設定手順は以下の通りです。

Step1: プラグインをインストール後、設定画面でPostsとPagesにチェックを入れる

[Image: hreflang tags liteのプラグインをインストールした後に、設定画面からPostsとPagesにチェックを入れる]

Step2: 各記事の編集画面下部に表示される「HREFLANG Tags」フィールドに、「他の言語でのURL」と「言語」を指定

[Image: HREFLANG Tagsの設定]

これで各記事のHreflang設定は完了です。

ただし、「hreflang tags lite」ではトップページの設定ができないため、子テーマの編集が必要です。

Step3: 子テーマを編集し、トップページにHreflangを設定する

[Image: HREFLANG Tagsの設定]

ヘッダーのphpファイルを子テーマに移動し、<head>内に以下のコードを記述します。

コード
<?php if(is_home() && !is_paged()): ?> <link rel="alternate" href="他の言語のトップページのURL" hreflang="他の言語の言語コード" /> <?php endif; ?>

以下は、弊社の英語サイトに記述したコード例です。

コード
<?php if(is_home() && !is_paged()): ?> <link rel="alternate" href="https://heysho.com/" hreflang="ja" /> <?php endif; ?>

Hreflang設定による改善効果(検証結果)

Hreflangを設定したばかりのため、現時点では効果を確認できていません。

約2週間後に改めて結果を報告します。

アメリカからの検索結果で弊社の英語サイトが上位表示されていれば、設定が成功したと判断できるでしょう。

参考 アメリカでGoogle.comで「heysho」と検索した時の検索画面

余談:Canonicalタグとの組み合わせについて

調査中に「同一コンテンツの各言語ページに対する評価を、HreflangとCanonicalタグで関連付ける」という情報を見つけました。

参考 How to Implement Hreflang & Canonical Tags Correctly | portent(英語)

もしこれが正しければ、グローバル展開している大手ブランドが非常に有利になりますが、現状では多くのグローバルサイトでもそのような設定は見られません。

真偽については不明な点も多いため、今後改めて調査したいと思います。

最後までお読みいただき、ありがとうございました。