hreflangというタグ、ご存知でしょうか?実はこのタグ、多言語サイトを作る時に重要な動きをしてくれるタグなんです。
どうして必要なの?
機会損失を防ぐ
例えば日英の2言語に対応しているサイトがあったとして、英語圏のユーザーがサイトを訪問した際に日本語が表示されてしまい、読めずに離脱してしまう…そんな状況。そこでhreflangタグの出番ですが、このタグの作用は検索結果の画面で現れます。検索を行ったユーザーが使用する言語に合わせて、検索結果が返されるようになります。英語圏のユーザーが検索した時には、英語のページに直接遷移できるようにしてくれるわけですね。ユーザーがいちいち日英切り替える必要がないわけです。便利。
Googleはlang属性を無視
実は、Google Search Consoleのヘルプに「Google では「lang」属性から文書型定義(DTD)まで、コードレベルの言語情報はすべて無視します。」という記述があります。Google曰く、lang属性はあてにならないと。そういった経緯でhreflangタグの挿入が推奨されているわけですね。今まで使用していたlang属性だけではダメなようです。。
入れ方
1 |
<link rel="alternate" hreflang="ここに言語コード" href="ここに該当言語のURL"> |
導入の仕方はとっても簡単。対応している言語の分だけ、タグを追加します。
例:日本語
1 |
<link rel="alternate" hreflang="ja" href="http://sample.co.jp/"> |
例:英語
1 |
<link rel="alternate" hreflang="en" href="http://sample.co.jp/en/"> |
記述にはlinkタグを使用します。
alternateというのは”代替物”という意味で、スマホ専用サイトが存在する場合、リダイレクトの設定に使用したりlもしますね※1。こちらにhreflang属性を追加しましょう。そうすることで、「このWebサイトの〇〇語版はこちら」と検索エンジンに認識してもらうことが出来ます。hrefには該当言語のURLを記述しましょう。
※1 rel=”alternate”を使用する時、スマホ専用サイトがある場合に”URLはこちら”と検索エンジンに案内する役割もあります。詳しくは「」で検索してみてください。
言語コード表例
言語 | 言語コード | 記述例 |
---|---|---|
日本語 | ja | hreflang=”ja” |
英語 | en | hreflang=”en” |
中国語 | zh | hreflang=”zh” |
韓国語 | ko | hreflang=”ko” |
フランス語 | fr | hreflang=”fr” |
ロシア語 | ru | hreflang=”ru” |
うちのサイトは日本語だけ…それでも入れておいた方がいい?
結論から申しますと、日本語だけの場合は必要ありません。
「SEO効果なし」と公式見解が出ているようです。しいて言えば、
Search Consoleの”インターナショナル ターゲティング”の項目がエラー表示でなくなる、くらいでしょうか。