サイト作成者にとってGoogleの検索結果に表示されることは非常に重要なことのひとつです。
そのためには作成したコンテンツをGoogleに発見してもらわなければいけないのですが(いわゆるSEOのひとつです)、Googleは「Googleウェブマスターツール」というページで管理しているページの登録などを行うことができます。
さて、そのGoogleウェブマスターツールですが、「クロール」という項目の「サイトマップ」の項目でサイトマップ(sitemap.xml)(以下XMLサイトマップ)やRSS・Atomなどのフィードを登録することができます。この項目は「サイトで登録すれば良いページのリスト」を登録するわけです。そうすると、Googleが効率よくページを登録できますし、更新情報をいち早くGoogleに知らせることができます。
このサイトマップの項目にはXMLで記述されたページの一覧であるXMLサイトマップとRSS・Atomのフィードが登録できますが、どちらの形式を登録すべきなのでしょうか?
●XMLサイトマップとRSS・Atomのフィードは役割が違う
一般的にXMLサイトマップは公開されている全てのページの情報が入っています。RSS・Atomのフィードにはブログ記事など最近更新されたページの20件~100件の情報が入っています。
XMLサイトマップ)は全てのページの情報が入っているのでRSS・Atomのフィードは登録する必要はないのでは?と思ってしまいますよね(XMLサイトマップのデータには「lastmod」のタグで最終更新時間も伝えることができるため最新のコンテンツがどれかですら、XMLサイトマップだけ見れば分かりますし)。
私も以前はそう思っていました(が、経験でRSS・Atomのフィードも登録していました)。
しかし、Googleの公式ブログ(英語)にて以下の趣旨の内容が投稿されたそうです。
サイト全体のページを記述することを目的としたXMLサイトマップがダウンロードされる頻度は、最近のアップデート内容を記述することを目的としたRSS/Atomフィードと比べると少なくなる
Google、サイトマップページ形式はXMLとRSS/Atomフィードの両方を推奨::SEM R (#SEMR)
Googleとしては、もともとのデータの役割が違うため、XMLサイトマップとRSS・Atomのフィードはクロールする頻度が違うということです。
つまりXMLサイトマップしか登録していないと、せっかくサイトを更新してもGoogleがページを登録するための巡回が遅れてしまう可能性があるということです。(逆にRSS・Atomのフィードしか登録していないと全ページ登録されるのは非常に時間が掛かる)
結論としては、Googleウェブマスターツールのサイトマップには、XMLサイトマップとRSS・Atomのフィードを共に登録しておくと良いということになります。
●実際にXMLサイトマップとRSS・Atomのフィードを登録すると…
次の図は、このブログのGoogleウェブマスターツールのサイトマップの項目ですが、XMLサイトマップとRSS・Atomのフィードを登録しているのがわかると思います。
1355ページの情報を送信し、RSS・Atomのフィードの分の50ページは重複しているはずですが、1353ページインデックスに登録されています。検索結果では重複することはないはずですので、重複分くらいは気にしていないのでしょう(気にするなってこと)。
●XMLサイトマップとRSS・Atomのフィードの巡回を早く来てもらうためには?
サイトを更新して、1秒でも早くGoogleのクローラーにXMLサイトマップとRSS・Atomのフィードを見に来てもらいたい時は、こちらから更新したことを伝えましょう。(公式ブログ Best practices for XML sitemaps & RSS/Atom feeds
(Official Google Webmaster Central Blog)を参考にしています)
XMLサイトマップの場合は「http://www.google.com/ping?sitemap=〈サイトマップのURL〉」にブラウザでアクセスすればOKです。
RSS・Atomのフィードの場合、PubSubHubbubという機能で通知すればOKです。
これは、WordPressだったらプラグインがあるし、Movable Typeは「miyagawa/MT-PubSubHubbub(GitHub)」というプラグインがMT4以降のバージョンで使えます(私も使っています)。
なお、以下のページの検証によればPubSubHubbubで更新情報を送信したら3秒後にGoogleのクローラーが来たそうです。早い(笑)。
みなさんもお試しを。
それでは。
●余談:bingにXMLサイトマップの更新を通知する方法
bingにXMLサイトマップの更新を通知するには「http://www.bing.com/ping?sitemap=〈サイトマップのURL〉」です。