私はこの種の質問が何千回も回答されたことを知っていますが、あなたはすべての質問が何らかの方法で異なることを知っています:)
そのため、Googleがサイトのインデックス作成を正しく行うことができません。ウェブサイトのサイトマップは次のとおりです。
| -example.com
| --- example.com/es
| --- example.com/en
mysite.comは、「HTTP_ACCEPT_LANGUAGE」ヘッダーに応じてリダイレクトするブリッジとして機能します(「en」はデフォルトに設定されます)。 googlebotはこのヘッダーを頻繁に送信しないため、これが問題になる可能性があると言われました(?)。
かなり一般的な設定ですよね?問題は、すべてのページにhreflangsが統合されており、サイトマップに代替バージョンがあるにもかかわらず、ブラウザの言語が常に英語バージョン(つまり、ページの説明とURL以外のタイトルを含む) )。さらに、言語サイトの代わりにルートドメインが常に表示されます(たとえば、Ryanairのように)。
私が達成しようとしていることをよりよく理解するために、Googleに結果を表示する方法を説明します。
スペイン語のWebブラウザーから検索する場合、スペイン語のコンテンツ:タイトルと説明(かなり明白なduh:P)、およびスペイン語のURL: "example.com/es"を表示したいと思います。そして、ブラウザがスペイン語ではない英語版でも同じです。公平を期すために、タイトルを「MYNAME-REST OF TITLE」ではなく「MYNAME:REST OF TITLE」に置き換え続ける理由もわかりません。
このサイトマップはルートドメインにあります(サイトマップインデックスです)。
<sitemap>
<loc>https://example.com/es/sitemap.xml</loc>
</sitemap>
<sitemap>
<loc>https://example.com/en/sitemap.xml</loc>
</sitemap>
そして、これはあなたがそれがどのように行われたかを見ることができるだけの英語のサイトマップです:
<urlset
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:example="http://www.example.com/schemas/example_schema"
xmlns:xhtml="http://www.w3.org/1999/xhtml">
<!-- namespace extension -->
<url>
<loc>https://example.com/en/</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://example.com/es/"/>
</url>
<url>
<loc>https://example.com/en/linkEnglish/</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://example.com/es/linkSpanish/"/>
</url>
<url>
<loc>https://example.com/es/</loc>
</url>
そして、これはヘッダー内のすべての単一ページに書き込まれます:
<!-- hreflang -->
<link rel="alternate" href="https://example.com/es" hreflang="es" />
<link rel="alternate" href="https://example.com/en" hreflang="en" />
どうすればこれを達成できますか?
事前にどうもありがとうございました!
ここに3つの問題があります。
1。 XMLサイトマップから自己参照hreflangがありません。
ページのソースコードでタグを使用する場合と同様に、ページのすべての代替バージョンを参照する必要があります。それ自体を含みます。
したがって、次のようになります。
<url>
<loc>https://example.com/en/</loc>
<xhtml:link rel="alternate" hreflang="es" href="https://example.com/es/"/>
<xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/"/>
</url>
2。ソースコードとXMLサイトマップの両方でhreflangタグマークアップを使用しています。
どちらか一方のみを使用し、両方は使用しないでください。したがって、ソースではマークアップが正しいように見えますが、上記のXMLサイトマップでは正しくないため、GoogleはXMLサイトマップでマークアップを使用し、コード内のタグを無視している可能性があります。
どちらを使用するか、ソースコードまたはXMLサイトマップは問題になりません。メンテナンスが最も簡単なものを選択し、1のみを選択します。
3。 X-default href langタグがありません
ホームページを自動リダイレクトする場合、これらのページに hreflangタグ "x-default" を実装する必要があります。このタグは、すべての代替バージョンに存在し、前述のように自己参照する必要があります。
実装は次のようになります
<link rel="alternate" href="http://example.com/" hreflang="x-default" />
<link rel="alternate" href="https://example.com/es" hreflang="es" />
<link rel="alternate" href="https://example.com/en" hreflang="en" />
ソースコードまたはXMLサイトマップの実装でx-defaultを使用できます。