web-dev-qa-db-ja.com

多言語ウェブサイトのサイトマップのベストプラクティス-各言語でURLをリストする必要がありますか、それともrel =“ alternate” + hreflangの使用で十分ですか?

私は多言語のWebサイトのサイトマップに取り組んでおり、ページの各言語バージョンを参照するためのベストプラクティスについて疑問があります。

ちょっとした背景として、ウェブサイトはコミュニティからのコメントと説明を含む約2万の場所を参照しています。ウェブサイトは5つの言語で利用できます(website.com/fr; website.com/it ...)

現時点では、サイトマップは英語のページのみを参照しており、指定した各ページのサイトマップで<xhtml:link rel="alternate" hreflang="en" href="URL"/> Googleが推奨する言語ごと(および英語)。

Google Search Consoleで、有効なカバレッジのあるページの約75%が「インデックス付き、サイトマップで送信されていない」と記述されていることがわかります。これにより、hreflang属性を持つ代替リンクでは、インデックスに登録するためのグーグル。

サイトマップに5つの言語すべてのページをリストし、同様に使用する必要がありますか<xhtml:link rel="alternate" hreflang="en"...各リンクに?

2
EdouardF

質問を開始するだけです。各言語に特定のSearch Consoleプロパティがありますか?そうでない場合-確立することを検討してください。

私の経験によれば、あなたが持っているような設定をするだけで十分です-すべてのhreflangを含む1つのサイトマップ。しかし、そのような設定はかなりエラーが発生しやすくなります。サイトマップURLの100%の取得に影響を与える多くの要因があります-この問題のリモート診断を行うことはできません。サイトマップを添付して簡単にするかもしれません。

しかし、私は最初の試みをします。 「サイトマップに5つの言語すべてのページをリストする必要がありますか?」このような:

  <url>
    <loc>http://www.example.com/english/page1.html</loc>
    <xhtml:link 
               rel="alternate"
               hreflang="de"
               href="http://www.example.com/deutsch/page1.html"/>
    <xhtml:link 
               rel="alternate"
               hreflang="de-ch"
               href="http://www.example.com/schweiz-deutsch/page1.html"/>
    <xhtml:link 
               rel="alternate"
               hreflang="en"
               href="http://www.example.com/english/page1.html"/>
  </url>
  <url>

    <url>
    <loc>http://www.example.com/english/page2.html</loc>
    <xhtml:link 
               rel="alternate"
               hreflang="de"
               href="http://www.example.com/deutsch/page2.html"/>
    <xhtml:link 
               rel="alternate"
               hreflang="de-ch"
               href="http://www.example.com/schweiz-deutsch/page2.html"/>
    <xhtml:link 
               rel="alternate"
               hreflang="en"
               href="http://www.example.com/english/page2.html"/>
  </url>
  <url>

ただし、Googleによると、このサイトマップにはすべてのURLをリストする必要があります。つまり、英語のページを<loc></loc>として、対応するドイツ語のhreflang urlとともにリストする場合、ドイツ語のurlも<loc></loc>としてリストする必要があります。対応する英語のhreflang URL。したがって、3つの異なる言語のURLがある場合、サイトマップには次のように3つの<url></url>ブロックが必要です。

  <url>
    <loc>http://www.example.com/english/page1.html</loc>
    <xhtml:link 
               rel="alternate"
               hreflang="de"
               href="http://www.example.com/deutsch/page1.html"/>
    <xhtml:link 
               rel="alternate"
               hreflang="de-ch"
               href="http://www.example.com/schweiz-deutsch/page1.html"/>
    <xhtml:link 
               rel="alternate"
               hreflang="en"
               href="http://www.example.com/english/page1.html"/>
  </url>

    <url>
    <loc>http://www.example.com/deutsch/page1.html</loc>
    <xhtml:link 
               rel="alternate"
               hreflang="de"
               href="http://www.example.com/deutsch/page1.html"/>
    <xhtml:link 
               rel="alternate"
               hreflang="de-ch"
               href="http://www.example.com/schweiz-deutsch/page1.html"/>
    <xhtml:link 
               rel="alternate"
               hreflang="en"
               href="http://www.example.com/english/page1.html"/>
  </url>

    <url>
    <loc>http://www.example.com/schweiz-deutsch/page1.html</loc>
    <xhtml:link 
               rel="alternate"
               hreflang="de"
               href="http://www.example.com/deutsch/page1.html"/>
    <xhtml:link 
               rel="alternate"
               hreflang="de-ch"
               href="http://www.example.com/schweiz-deutsch/page1.html"/>
    <xhtml:link 
               rel="alternate"
               hreflang="en"
               href="http://www.example.com/english/page1.html"/>
  </url>
1
Evgeniy