私のサイトでは、誰かがdomain.com
またはdomain.com/contact
のような国の表示を含まない他のURLに直接アクセスすると、言語コンテンツが彼のIPに基づいて表示されます。たとえば、彼が英国に住んでいる場合、含まれている英国の翻訳ファイルを取得します。同様に、イタリアに住んでおり、domain.com
またはdomain.com/about
に直接アクセスすると、ITの翻訳が取得されます。
この最初の訪問の後、他のすべてのリンクは国に基づいて作成されます。つまり、domain.com/it/faq
を意味し、セッションで言語を保存します。
したがって、基本的に、国のないURLはIPに基づいて言語ファイルをロードします。基準が満たされない場合、英国の言語ファイルがデフォルトとしてロードされます。
これが私のhreflangの外観です
<link rel="alternate" href="domain.com/en/contact" hreflang="en"> <link rel="alternate" href="domain.com/it/contact" hreflang="it"> <link rel="alternate" href="domain.com/contact" hreflang="x-default">
質問:
私の国では、多くの場合、検索クエリで複数の言語を組み合わせて使用しています。 SEOを改善するために多言語xmlサイトマップを作成するか、すべての言語のすべてのリンクを含むサイトマップを作成する必要がありますか?
これはこれを行う方法ですか?
<url>
<loc>https://www.domain.com/what-we-do</loc>
<xhtml:link rel="alternate" hreflang="x-default" href="https://www.domain.com/what-we-do" />
<xhtml:link rel="alternate" hreflang="en" href="https://www.domain.com/en/what-we-do" />
<xhtml:link rel="alternate" hreflang="it" href="https://www.domain.com/it/what-we-do" />
</url>
マイク提案後の更新
<url>
<loc>https://www.domain.com/our-work</loc>
<xhtml:link rel="alternate" hreflang="en" href="https://www.domain.com/en/our-work" />
<xhtml:link rel="alternate" hreflang="it" href="https://www.domain.com/it/our-work" />
</url>
混乱の原因を避けるために、多言語サイトマップを作成することをお勧めします。表示された形式は正しいです。
実際、ページセクションにhreflang宣言をドロップし、サイトマップ内で宣言を使用することもできます。
Official Webmaster Toolsブログでは、ページ上ではなく多言語サイトマップ宣言を使用する利点について説明しています。 http://googlewebmastercentral.blogspot.co.uk/2012/05/multilingual-and-multinational-site.html =-私がそれに追加する1つの利点は、一貫性を維持することも容易であり、新しいページなどでhreflangを宣言することを逃さないことです。
ああ、XMLサイトマップの最初でxmlns:xhtml = "http://www.w3.org/1999/xhtml"のようなエンコーディングとxhtml名前空間を宣言することを忘れないでください。
あなたの最後の例では、これがあなたのサイトマップに利益をもたらすかどうかわかりません:
<xhtml:link rel="alternate" hreflang="x-default" href="https://www.domain.com/what-we-do" />
これは、「x-default」が標準言語だとは思わないからです。さらに、ここでデフォルトのURLを指定しました:
<loc>https://www.domain.com/what-we-do</loc>
あなたの場合には、言語でサイトマップファイルを作成してソートすることをお勧めします(別名多言語対応)。また、Googleに送信できるサイトマップのgzip圧縮バージョンを作成して、Googleがダウンロードする際にサーバーの帯域幅をより少なく使用できるようにします。圧縮は優れています。
1つまたは2つのサイトマップファイルに各言語の各リンクをリストすることはお勧めしませんファイル。
ウェブサイトの大きさはわかりませんが、できる限り論理的にサイトマップファイルを整理してください。
例えば。この設定は、特に数千のリンクを行う場合には非論理的です:
ファイル1:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>http://www.example.com/fr/aboutus</loc></url>
<url><loc>http://www.example.com/en/aboutus</loc></url>
<url><loc>http://www.example.com/de/aboutus</loc></url>
<url><loc>http://www.example.com/gb/aboutus</loc></url>
<url><loc>http://www.example.com/fr/contactus</loc></url>
<url><loc>http://www.example.com/en/contactus</loc></url>
<url><loc>http://www.example.com/de/contactus</loc></url>
<url><loc>http://www.example.com/gb/contactus</loc></url>
</urlset>
このセットアップがより論理的な場合:
ファイル1:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>http://www.example.com/fr/aboutus</loc></url>
<url><loc>http://www.example.com/fr/contactus</loc></url>
</urlset>
ファイル2:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>http://www.example.com/en/aboutus</loc></url>
<url><loc>http://www.example.com/en/contactus</loc></url>
</urlset>
ファイル3:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>http://www.example.com/de/aboutus</loc></url>
<url><loc>http://www.example.com/de/contactus</loc></url>
</urlset>
ファイル4:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url><loc>http://www.example.com/gb/aboutus</loc></url>
<url><loc>http://www.example.com/gb/contactus</loc></url>
</urlset>
次に、各htmlページに、通常どおり次のようなコードを含めます。
<link rel="alternate" href="http://www.example.com/en/contactus" hreflang="en">
検索エンジンは、リンクタグを使用して言語間の関連付けを理解できる必要があります。
サイトをGoogleに送信する場合は、すべての国のバージョンのGoogleに送信して、すべてのデータベースがそれに応じて更新されるようにしてください。また、Googleのドキュメントをチェックして、クローラーがサイトの正しいバージョンに移動されていることを確認してください。サーバーログを確認して、これを確認してください。どのエントリがGoogleからのものかわからない場合は、そのIPでwhois検索を行う必要があるかもしれません。