web-dev-qa-db-ja.com

国内の地域(州や県など)のHreflang

私は、ユーザーの出身州/州に応じて異なるコンテンツを持つWebサイトで作業しています。

以下のようにhreflangにサブディビジョンコードを追加することは有効ですか?

<link rel="alternate" hreflang="en-ca-ab" href="https://www.example.com/ca/ab/example/"/> 

そうでない場合、コンテンツが特定の州/州に固有であることを検索エンジンに知らせる別の方法はありますか?

5
Brad Thiessen

要するに、いいえ。 Googleのhreflangガイドライン の「サポートされる言語/地域コード」セクションは、かなり明確です:

Hreflang属性の値は、代替URLの言語(ISO 639-1形式)およびオプションで地域(ISO 3166-1 Alpha 2形式)を識別します。

「地域」という言葉の使用は、おそらく紛らわしいでしょう。 ISO 3166-1 Alpha 2コードは、countriesを示します1

おそらくやりたいことは、ローカルSEOとして知られています。ローカルSEOは、コンテンツとオフサイトの最適化に依存して、ローカルインテントで検索クエリをターゲットにします。ここでそれをカバーするのはあなたの質問の範囲を超えています。


1 本当に用心深くなるには、これでさえ意味的に面倒です。たとえば、英国の構成国は、国(州または県ではない)であるにもかかわらず、独自のコードを持ちません。

3
GDav

HTML5仕様では、hreflangを次のように定義しています。

ハイパーリンクを作成する要素のhreflang属性は、存在する場合、リンクされたリソースの言語を提供します。それは純粋に助言です。値は有効なBCP 47言語タグである必要があります。 [BCP47]ユーザーエージェントはこの属性を信頼できるものと見なしてはなりません。リソースを取得する際、ユーザーエージェントはリソースに関連付けられた言語情報のみを使用して言語を決定します。リソースへのリンクに含まれるメタデータは使用しません。

https://www.w3.org/TR/html5/links.html#attr-hyperlink-hreflang を参照)

BCP47はIETFドキュメント「 言語を識別するタグ 」です。言語タグがどのように形成されるか、およびその可能なコンテンツの詳細を示します。

解析は基本的にlanguage[-script][-region]*("-" variant)*("-" extension)です:

  1. 最初の部分はISO 639-1 Alpha-2コードで定義されている言語なので、ケースのenにはオプションの拡張言語サブタグがあり、
  2. スクリプトは4文字なので、ここではあなたのケースではありません(オプションです)。
  3. 地域はISO 3166-1からの国コードであり、大文字であることが望ましいため、CA
  4. バリアントサブタグは、として定義され、他の利用可能なサブタグでカバーされていない言語またはその方言を定義する追加の、よく認識されたバリエーションを示すために使用されます。少なくとも4文字(2.2.5のポイント4を参照)

したがって、en-ca-abは有効ではないようです。カナダのアルバータ州のISO 3166-2コードは「CA-AB」ですが、ハイフンと各バリアントがレジストリに登録されているため、そのままバリアントとして使用することはできません。

実際、 http://unicode.org/cldr/utility/languageid.jsp で文字列を入力すると、無効としてラベル付けされていることがわかります。 https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry に「Alberta」の登録もありません

要するに、あなたはカナダの英語をアルバータで話されていると定義/本当に定義する必要があると思いますか?それは有効なen-CA言語タグであるカナダの英語とは大きく異なるからです。

地理ではなく言語を特定していることに注意してください。 Webサイトの一部がこの特定の州のみに関連するように指定する場合(たとえば、そこでのみサービスを提供する場合)、言語の問題ではないため、hreflangとは関係ありません。

1
Patrick Mevzek

Hreflangに関しては、言語と国のスキーマのように、コンテンツをより詳細に指定することはできません。

ただし、特に https://schema.org/audience および https://schema.org/spatialCoverage の構造化データを使用することを強くお勧めします。両方のプロパティを使用すると、対象地域を非常に正確に伝えることができます。

答えはありませんが、疑問は次のとおりです。異なるコンテンツを異なる地域に技術的に配信するにはどうすればよいですか。 IPベース?あなたにとって正確に機能していますか?

1
Evgeniy