Webサイトは、国内だけでなく全世界に公開されます。国外ユーザーにも手軽にアピールする方法としては最適の方法です。また、ページの多言語対応として、検索エンジン対策をしておく必要があります。基本的にはGoogle向けの対策で大丈夫ですが、特定の国に対してはその国でよく使われている検索エンジン対策も重要です。Webサイトを構築するレンタルサーバーの設置場所も検討の余地があります。本記事では、国外ユーザー向けに多言語サイトを作る際に検索エンジン対策で気を付けるべきことについてまとめました。

ページのターゲットを検索エンジンに認識させる

多言語サイトの検索エンジン対策として、まずは大多数の国で検索に使われているGoogleに対して、ページのターゲット国を認識させる必要があります。ページのターゲットがどこの国かを記載する方法は、ページファイルのヘッダー設定と、Search Consoleを使った地域ターゲティングの2種類があるため、それぞれ設定方法を説明します。

headタグ内でhreflang属性を使用する

多言語サイトの機会損失を防ぐ為にはhreflang属性について最適化しましょう。以下のページで基本的な多言語サイトの構成についても触れていますが、

各言語ページを翻訳して作成したとして、も重複コンテンツになってしまっては逆効果になってしまいます。

コンテンツを複数言語で提供するウェブサイトの場合、Googleでは rel=”alternate” hreflang=”x”属性 を使用して、その現地に適した言語やインデックスしたURL情報を検索結果として提供しています。
Search Console ヘルプ

言語アノテーションタグ( rel=”alternate” hreflang=”x” )は、headタグ内で使用します。「 x 」の部分に、言語コードの文字を指定しすることで検索エンジンに対応言語を伝える機能を果たします。言語コードは、以下のサイトに一覧がありますので参考にして「 x 」の部分に設定してみてください。

例えば、日本だったら「hreflang=”ja”」、英語なら「hreflang=”en”」、中国なら「hreflang=”zh”」、韓国語なら「hreflang=”Ko”」と記述することになります。

ISO 639言語コード :ISO 639 言語コード – Wikipedia

韓国語を母国語とする国からの検索の場合、hreflang属性で「hreflang=”ko”」の指定があれば最初から韓国語の表示となりますので、適切な言語ページを表示する施策は異なる言語ページが表示されることによる機会損失を防ぐことになります。

hreflangタグの設定方法は主に3つです。どれかで設定を行えば問題なく動作します。間違わない運用ができる方法を選択すると良いでしょう。

  • headタグ内にリンク要素として記載する
  • HTTPヘッダーに記載する
  • XMLサイトマップに記載する

当記事では、WordPress対応時に使うことになるであろうheadタグ内にリンク要素として記載する方法の例をご紹介します。

トップページへの記載

  • <link rel="alternate" hreflang="ja" href="http://example.com/">
  • <link rel="alternate" hreflang="zh" href="http://example.com/chinese/">
  • <link rel="alternate" hreflang="ko" href="http://example.com/korea/">

配下の各ページへの記載

  • <link rel="alternate" hreflang="ja" href="http://example.com/post-url/">
  • <link rel="alternate" hreflang="zh" href="http://example.com/chinese/post-url/">
  • <link rel="alternate" hreflang="ko" href="http://example.com/korea/post-url/">

という具合に主要な言語のページと相互にリンクを設定するようにします。相互リンクであることがポイントですので、全ページに漏れなく記載するようにしましょう。WordPressの場合はheader.phpに記載して各URLを読み込む方法をとればいいので、比較的楽に導入できるでしょう。

head内に上記コードが存在することで検索エンジンには以下のような情報として伝わります。

・このページは「http://example.com/XXX」という日本語ページの代替コンテンツである。
・このページは「http://example.com/chinese/XXX」という中国語ページの代替コンテンツである。
・このページは「http://example.com/korea/XXX」という韓国語ページの代替コンテンツである。

・「日本語のブラウザには日本語のページ(http://example.com/XXX)を検索結果に表示させる」
・「中国語のブラウザには中国語のページ(http://example.com/chinese/XXX)を検索結果に表示させる」
・「韓国語のブラウザには韓国語のページ(http://example.com/korea/XXX)を検索結果に表示させる」

といった振り分けが行えるようになります。

WordPressサイトへの対応方法について

WordPressの場合の記載方法についてですが、日本語サイトと英語サイトをそれぞれ構築した場合の例を考えてみたいと思います。

日本語サイト:https://www.example.com
英語サイト:https://www.example.com/en/
の場合

日本語のサイトのheader.phpには以下のように記載して

  • //プロトコル名(通信規約名)を取得。http:// や https:// の部分。
  • $prot = empty($_SERVER["HTTPS"]) ? "http://" : "https://";
  • //ホスト名を取得。www.example.com の部分。
  • $host = $_SERVER["HTTP_HOST"];
  • //要求されたページのURLを取得。「/post-id/」や「/page-name/」など個別の部分。
  • $uri = $_SERVER["REQUEST_URI"];
  • //<link>タグを挿入。
  • echo '<link rel="alternate" hreflang="ja" href="' . $prot . $host . $uri . '">';
  • echo '<link rel="alternate" hreflang="en" href="' . $prot . $host . 'en/' . $uri . '">';

英語のサイトのheader.phpには以下のように記載します。

  • //プロトコル名(通信規約名)を取得。http:// や https:// の部分。
  • $prot = empty($_SERVER["HTTPS"]) ? "http://" : "https://";
  • //ホスト名を取得。www.example.com の部分。
  • $host = $_SERVER["HTTP_HOST"];
  • //要求されたページのURLを取得。「/post-id/」や「/page-name/」など個別の部分。
  • $uri = $_SERVER["REQUEST_URI"];
  • //<link>タグを挿入。
  • echo '<link rel="alternate" hreflang="en" href="' . $prot . $host . $uri . '">';
  • echo '<link rel="alternate" hreflang="ja" href="' . $prot . $host . str_replace("en/", "/", $uri) . '">';

WordPressにはプラグインも豊富にありますので、PHPを編集せずとも設置が可能になる便利なプラグインを探してみといいでしょう。

Googleはlang属性を無視する!?

hreflang属性と似ている記述にlang属性があります。lang属性は、要素の内容がどのような言語で記述されているかを表しますが、Googleのウェブマスター向け公式ブログで以下のように書かれているんですね。

Google では「lang」属性から文書型定義(DTD)まで、コードレベルの言語情報はすべて無視します。
一部のサイト制作ソフトでは、これらの属性が自動的に作成されるため、ウェブページの言語を判断する際にこうした情報はあまり信頼できないためです
Googleのウェブマスター向け公式ブログ

このような記載もあって、海外向けのSEOにおいては軽視されているようですが…決してlang属性をいい加減に設定してもいいということにはなりません。可能な限り対応をするべきでしょう。上記の内容はあくまでGoogle検索における話であって、他の検索エンジンがlang属性を参照している可能性はありますし、今後Google検索が方針を改めることもあります。是非ともHTMLリファレンスに沿った対応を可能な限り行う方向でコンテンツを作っていきましょう。

以下にlang属性を使用する場合のシーン例を記載しておきます。lang属性はグローバル属性のため、HTML5の全ての要素に指定することができます。

lang属性のサンプルソース

  • <!-- html 要素に指定して、文書が日本語で書かれていることを表した例 -->
  • <!DOCTYPE html>
  • <html lang="ja">
  •  <head>
  •   <meta charset="utf-8" />
  •   <title>ページタイトル</title>
  •  </head>
  •  <body>
  •   …省略…
  •  </body>
  • </html>

  • <!-- 文書の一部に他の言語が挿入される場合など -->
  • <p>
  •  以下は 英文の資料を引用しますが、
  • </p>
  • <blockquote lang="en" cite="https://www.w3.org/TR/html5/introduction.html">
  •   HTML is the World Wide Web’s core markup language.
  • </blockquote>

  • <!-- lang、xml:lang 属性を同時に指定した例 -->
  • <!DOCTYPE html>
  • <html lang="ja" xml:lang="ja">
  •  <head>
  •   <meta charset="utf-8" />
  •   <title>ページタイトル</title>
  •  </head>
  •  <body>
  •   …省略…
  •  </body>
  • </html>

lang 属性についてもコンテンツ内で言語が混ざる際は是非指定する丁寧なサイト運用を心掛けましょう。

GoogleのSearch Consoleを使って「ターゲットユーザーの国」を設定する

多言語サイトのドメイン名が、jpなどの国コードトップレベルドメインではなく、comやnetなど、どの国でも使われるジェネリックトップレベルドメインの場合、検索サイト向けの対策をしておくべきです。GoogleのSearch Consoleで、「インターナショナルターゲティングレポート」を開き、そこでジオターゲティングが可能になります。

インターナショナルターゲティングレポート

インターナショナルターゲティングレポートの[国] タブをクリックして、[地域ターゲット] チェックボックスをオンにすると、ターゲット先の国が選択できるようになります。

主流の検索エンジン対策を行う

ほとんどの国ではGoogleが主流ではあるものの、中国、韓国、ロシアなど一部の国によっては主流の検索エンジンが異なります。これらの国では、検索エンジン対策が必要です。Google以外の検索エンジンが強い国と、その検索エンジンを紹介します。ここに取り上げた国以外にも情勢を把握して対応をすることが必要となります。最初は手探りになると思いますが、しっかりとした検証を行いながら上位表示を狙うようにしましょう。

  • 中国:Baiduが強い、モバイルではShenmaも台頭
  • 韓国:Googleが過半数を超えているが2位のNAVERもモバイルでは3割を占めている
  • ロシア:YANDEX RUがGoogleと人気を二分している

中国のBaiduに検索されるように対策するには、以下の手続きが必要です。

・中国工信部の登録(サイト構築申請手続き)
・検索エンジンへの登録(http://www.baidu.com/search/url_submit.htmlから実施)
・サイトマップを渡す(現状ではrobots.txtを用意して知らせる)

韓国のNAVERは、企業のWebサイトを上位表示することはほとんどなく、NAVERブログを重要視するという特殊な特徴があり、通常の方法ではSEO対策が難しい検索エンジンです。NAVERの検索エンジン対策は、企業が自社のNAVERブログを作成することで、多くの企業はNAVERの自社ブログを更新し続けることで上位表示を狙っています。

ロシアのYANDEX RUは、以下の手順でWebサイトを登録することで、検索エンジンに認識されるようになります。

・YANDEXのウェブマスターツールへ登録(https://webmaster.yandex.com/)
・ウェブマスターツール内で、登録したいサイトを指定

これらの国に対して情報を発信したい場合は、ご紹介した方法でそれぞれの国の主要検索エンジンにも自社のWebサイトを認識させるようにしましょう。

サーバーの設置場所を考える

Webサイトを掲載するレンタルサーバーの設置場所も、国内にするか海外にするかを検討する必要があります。それぞれのメリットとデメリットを解説します。

海外サーバーに設置する

海外サーバーに設置するメリット

  • 同じ国内のため表示速度が速く、SEO対策をしっかりすれば検索エンジンから評価される
  • 機会損失を可能な限り少なくして売り上げ増加を目指せる

海外サーバーに設置するデメリット

  • サーバー料金が追加で必要
  • 管理やサポートが現地語で時差もあるため煩雑
  • 現地ごとの法律を熟知する必要がある

国内サーバーに設置する

国内サーバーに設置するメリット

  • サーバー料金が比較的安価
  • 管理やサポートもすべて日本、時差もない
  • 日本の法律を把握しておけば大丈夫

国内サーバーに設置するデメリット

  • ネットワークが現地から遠く表示速度が遅いため直帰率が高くなり検索エンジンの評価も下がる
  • 結果的に売り上げが伸びない

国内サーバー、海外サーバーのどちらにも一長一短あります。多言語サイトを構築して現地でのSEO効果を狙うなら、予算が許す限り、そのターゲットとなる現地のサーバーを立てる方向で検討したほうが良さそうです。

まとめ

国外ユーザー向けにページを作る際に、検索エンジン対策で気を付けるべきことを紹介しました。日本国内のSEO対策で慣れている分、Googleのサーチエンジンへの対策は比較的理解しやすいかもしれませんが、一部の国でよく使われている検索エンジンの対策をするには、その方法をよく調べておく必要があります。また、レンタルサーバーの設置場所は、基本的にはそのサイトを見せたい現地に設置することが望ましいです。

国外ユーザーに向けてしっかりとしたウェブコンテンツの露出を狙う場合は、サーバー設置、検索エンジン対策共に現地の情勢に合わせた対応を検討するようにしましょう。皆さんのウェブサイトの国外へ向けた対策として参考にしていただけたら嬉しく思います。

TCD MUSEUMに掲載されている場合、TCD MUSEUMの英語サイトにも同時掲載されます。TCD MUSEUMへの掲載申請はコチラから。