異なる言語のlink
属性を使用して、ページに複数のhreflang
タグを含めることはできますが、そのページの言語検出と関連コンテンツ配信はApacheで行われるため、実際はすべて同じURLを指しますレベル? (異なる言語でコンテンツを配信するPHPなどの動的ページについても同じことが言えると思います。)
私のサイトのセットアップではMultiView
とAddLanguage
の組み合わせを使用しているため、URLを読み込むときにHost/folder/page
、Apacheは実際にHost/folder/page.<lang>.html
を提供します。つまり、ページのコンテンツは英語またはフランス語ブラウザの言語設定にもよりますが、ロードするURLは同じままです。これは私が気に入っている方法です。
ここで見てきた多くの答えは、言語のサブドメインまたはサブフォルダーのみを考慮していますが、URLはすべての言語で同じであるため、私の場合ではありません。複数のhreflang
を使用してこれを適切にインデックス化できますか?
例:htp://www.nicealias.com/articles/focus_on_renewables.en.html
およびhtp://www.nicealias.com/articles/focus_on_renewables.fr.html
を使用してロードできますhtp://www.nicealias.com/articles/focus_on_renewables
これらのタグを両方一緒に使用できますか
<link rel="alternate" href="http://www.nicealias.com/articles/focus_on_renewables" hreflang="en">
<link rel="alternate" href="http://www.nicealias.com/articles/focus_on_renewables" hreflang="fr">
apacheが適切なコンテンツを提供することを考慮して、各ページで?
異なる言語コードは同じページを指すことができますが、使用方法は間違っています。
これは結構です:
<link rel=alternate hreflang="en-US" href="http://example.com/en/">
<link rel=alternate hreflang="en-GB" href="http://example.com/en/">
しかし、あなたの例はそうではありません。それについて考えてみてください-私たちは皆、私たちのページのすべての言語バージョンをクロールする検索エンジンを望んでいます。しかし、提案されたマークアップにより、検索エンジンが英語とフランス語のコンテンツをクロールして表示することができなくなります。 Googlebotがページをクロールすると、英語版が取得されます。フランス語版も同じページ(!)にあることが検出されますが、フランス語のコンテンツは見つかりません。
あなたがしていることに対する解決策はx-defaultです。 x-defaultは、自動検出とリダイレクトを行うページを指すために使用されるhreflangの特別な値です。したがって、3つの個別のURLが必要です。
3つのURLがあると、Googleはすべてのバージョンをクロールしてインデックスを作成できます。また、Googleはユーザーの検索設定を知っている場合、検索結果に適切な(EN/FR)ページを表示します。 Googleがユーザーの設定を知らない場合、x-defaultページが表示されるため、ユーザーは自分の言語を選択できます。