簡単な答え: hreflangタグは、Googleにどの言語または地域バージョンのページをどのユーザーに表示するかを伝えます。これにより、英語、フランス語、ドイツ語のバージョンが互いに競合したり、間違ったオーディエンスに提供されたりすることを防ぎます。Shopifyでは、Marketsが公開された言語および地域のURLに対して自動的にhreflangを生成します。手動で書くことはほとんどありません。重要な失敗は、戻りタグの欠如(hreflangは相互でなければなりません)、間違ったまたは架空の地域コード、未公開またはリダイレクトされるロケールを指すことです。意図ではなく、レンダリングされたタグを確認してください。
Shopifyで第2言語や特定の国向けの市場をオンにした場合、hreflangは検索でバージョンが互いに食い合わないようにします。正しく設定すれば、Googleはフランスのページをフランスのユーザーに、米国のページを米国のユーザーに表示します。間違えると、間違ったページが表示されたり、1つのバージョンが選ばれて他が埋もれたりします。
hreflangの実際の機能
hreflang注釈は小さなタグです — <link rel="alternate" hreflang="fr-ca" href="..."> — これは「このURLはこのページのフランス語カナダ版です」と示します。ページは、持っているすべての言語/地域バリアントに対して1つずつ、さらに特定のものに一致しないすべての人のためのx-defaultをリストします。Googleはクラスターを読み取り、各検索者を正しいバージョンにルーティングします。
人々をつまずかせる唯一のルールは相互性です:クラスター内のすべてのページは、クラスター内の他のすべてのページにリンクしなければならず、自分自身にも戻る必要があります。英語のページがフランス語のページを指しているが、フランス語のページが戻って指していない場合、Googleは注釈を信頼されていないと見なし、無視します。
Shopifyの処理方法
Shopify Marketsを使用すると、言語や地域を公開したときに、ShopifyがそれらのURLに対してhreflang注釈を追加します。これにより、一般的なケースがうまくカバーされます — タグを手動で書くことはありません。ギャップが生じるのは、翻訳されているが公開されていないロケール、別のURLを持たずに市場が共有されている場合、またはMarketsが発行するものと一致しない翻訳アプリによって追加されたhreflangです。これらのいずれかが壊れたまたは不完全なクラスターを生み出す可能性があります。
それを壊す3つのミス
| ミス | 何が起こるか | hreflangへの影響 |
|---|---|---|
| 戻りタグの欠如 | 相互性が壊れる;各ページは他のすべてのページにリンクし、自分自身にもリンクする必要があります。 | Googleは注釈を無視します。 |
| 間違った言語/地域コード | en-uk(正しくはen-gb)のような架空の値は黙って削除されます。 |
コードは黙って削除され、hreflangは効果がありません。 |
| 不適切なURLを指す | リダイレクト、404、またはnoindexされたページをターゲットにします。 | hreflangクラスター全体を毒します。 |
- 戻りタグの欠如。 上記の相互性ルール。ほとんどの「hreflangが機能しない」ケースはこれです。
- 間違ったコード。 値は言語(ISO-639:
en,fr,de)で、オプションで地域(ISO-3166:en-gb,fr-ca)が追加されます。en-ukのような架空の値は黙って削除されます。 - 不適切なURLを指す。 リダイレクト、404、またはnoindexedされたページをターゲットにするhreflangはクラスターを毒します。リストされたすべてのURLは200を返し、インデックス可能であるべきです。
検証方法
翻訳されたページのソースを表示し、hreflangリンクが有効なコードと絶対URLでレンダリングされていることを確認します。リストされた各URLが200を返し、他のURLを戻してリストしていることをスポットチェックします。Google Search Consoleの国際ターゲティングレポートは、ストア全体での戻りタグの欠如や無効なコードエラーを浮き彫りにします。相互性とコードエラーを最初に修正してください — これらは実際のhreflangの失敗のほとんどを占め、翻訳作業を無駄にするものです。