Google SitemapのXML仕様

/web/xml

Note: この記事は、3年以上前に書かれています。Webの進化は速い!情報の正確性は自己責任で判断してください。

Google Sitemapに投稿する「サイトマップ」の形式は、RSS、txt、XMLファイルのいずれか。通常用途だとRSSかtxtで必要十分だと思いますが、各エントリのプライオリティを細かく設定したい場合のために、いちおう纏めておきます。

Sample

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <urlset xmlns="http://www.google.com/schemas/sitemap/0.84http://www.sitemaps.org/schemas/sitemap/0.9">
  3.  
  4. <url>
  5. <loc>http://www.example.com/</loc>
  6. <lastmod>2005-01-01</lastmod>
  7. <changefreq>monthly</changefreq>
  8. <priority>0.8</priority>
  9. </url>
  10. <url>
  11. <loc>http://www.example.com/catalog1</loc>
  12. <changefreq>weekly</changefreq>
  13. </url>
  14. <url>
  15. <loc>http://www.example.com/catalog2</loc>
  16. <lastmod>2004-12-23T18:00:15+00:00</lastmod>
  17. <priority>0.3</priority>
  18. </url>
  19.  
  20. </urlset>

XMLタグ解説

タグ 説明
<urlset> 必須。Google Sitemapsの名前空間
<url> 必須。各エントリを示すコンテナ
<loc> 必須。ページのURL。httpのようなプロトコルで始まらなければならない。(サーバが求めるなら)スラッシュ("/")で終わる必要がある。2047字以下でなければならない。
<lastmod> 任意。最終更新日時をW3CDTFで記述する。
<changefreq> 任意。ページの更新頻度を記述する。設定できる値は下記のいずれか。
  • always
  • hourly
  • daily
  • weekly
  • monthly
  • yearly
  • never
注意すべきこと。この指定はクロウラに対するヒントであり、命令ではない、ということ。 (“hourly”を振っても毎時間必ずクロールしてくれる訳ではない)
<priority> 任意。対象サイトにおける、そのページの重要度を記述する。対象サイト内における相対的な重み付けであり、他サイトとの比較はしない。設定できる値は0.0から1.0まで。デフォルト値は0.5となっている。

加えて、すべてのURLは(RFC-3986RFC-3987、およびXMLの標準に従って)適切にエスケープされていなければならない。

参照: Google Webmaster Tools, XML Sitemap Format

追記(2006.11.22)

11月16日、Yahoo!とMicrosoftがSitemapsのサポートを決定。サイトマップの仕様はGoogleのSitemaps XMLに統合。基本的に変更はないのですが、名前空間だけ新仕様のものに変わっています。

Note: スパム対策が面倒なので、コメント投稿を廃止しました。以前のコメントは残します。
ご意見・ご要望はtwitter@sigwygかはてブコメントにて。