書籍「いちばんやさしいGoogleビジネスプロフィールの教本」

はてなブログのサイトマップが登録できないときの対処方法

SEO

Search Consoleに、はてなブログのサイトマップが登録できないことがあります。

ウェブマスターの公式コミュニティにもよく質問が寄せられています。
実際のところ、はてなブログで生成されるサイトマップが読み込まない話なので、はてなブログ側の仕様が変更されない限り問題は解決しませんが、ユーザー側で対処できる方法があれば知りたいですよね?

このエントリーでは、はてなブログのサイトマップが登録できないときの対処方法をお伝えします。

はてなブログのサイトマップが登録できないと、どんな問題が発生するのか?

結論から先にいうとSearch Consoleに、はてなブログのサイトマップが登録できなかったとしてもブログ記事はインデックスされますので大きな問題が発生することはありません。

なぜサイトマップが登録できなくても記事がインデックスされるかについては後述します。

大きな問題は発生しませんが、強いて言うならSearch Consoleがサイトマップを認識している状態と比較すると、記事がインデックスされるまでに多少時間がかかります。一刻も早くインデックスさせなければならないニュース系の記事でなければ、大きな問題にはならないはずです。

Search Consoleに3つのサイトマップを登録する

はてなブログのサイトマップが登録できないときの対処方法をお伝えします。

多くのユーザーはSearch Consoleに sitemap.xml を登録したけど、サイトマップがうまく認識しない不具合に悩んでいます。

はてなブログのサイトマップが登録できないときは、3つのサイトマップを登録すると、Search Consoleでサイトマップが認識される可能性が上がります。

  • sitemap_index.xml
  • sitemap.xml?page=1
  • sitemap.xml

sitemap_index.xml と sitemap.xml?page=1 のサイトマップが登録できればOK

3つのサイトマップを登録したら、sitemap_index.xml と sitemap.xml?page=1 のサイトマップが登録できればOKです。

Search Consoleがサイトマップを認識すると、以下の画像のように「検出されたURL」に数字が表示されるはずです。

sitemap_index.xml と sitemap.xml?page=1 のサイトマップが登録できればOK

sitemap_index.xml と sitemap.xml?page=1は3つのURLを検出しているが、sitemap.xml はURLを検出できない

以下、各サイトマップの詳細を説明します。

sitemap_index.xml

このサイトマップは、はてなブログに設置された robots.txt に記載されているサイトマップです。

はてなブログに設置された robots.txt に記載されているサイトマップ

サイトマップの中身を見てみると、sitemap.xml と全く同じ内容なのですが、僕のはてなブログの環境だとsitemap.xml は認識されませんが、sitemap_index.xml は認識されています。

Search Consoleのサイトマップから sitemap_index.xml を追加してください。

sitemap.xml?page=1

はてなブログのサイトマップは入れ子になっており、sitemap.xml や sitemap_index.xml の入れ子のサイトマップが sitemap.xml?page=1 になります。

sitemap.xml?page=1 もSearch Consoleのサイトマップに追加してください。

sitemap.xml

通常、はてなブログで登録するサイトマップです。

URL検査ツールよりインデックスに登録するとよいケース

URL検査ツールよりインデックスに登録する

URL検査ツールよりインデックスに登録するとよいケースもお伝えします。

サイトマップが登録されないと、記事が検索エンジンにインデックスされるまでに時間がかかることがあります。

その場合、URL検査ツールよりインデックスに登録すると、インデックスまでの時間を短縮することが可能です。

ただし、インデックスに登録するURLの数は、1日あたりの制限があるので、たくさんある場合、全て送信することはできないのでご注意ください。

インデックスカバレッジレポートで重要なページがインデックスされていない場合

サイトマップが登録できなかった場合、インデックスカバレッジレポートで重要なページがインデックスされているか確認することをオススメします。

インデックスされていないURLがあれば、URL検査ツールより個別にURLをインデックスに送信してください。

はてなブログを始めたばかりの場合

はてなブログを始めたばかりの場合は、クローラがブログを訪問する頻度は低いので、新規記事を書いたらURL検査ツールよりインデックスに登録します。

Search Consoleでサイトマップが読み込まれていれば、クローラがサイトマップ経由でURLを検出できるのですが、サイトマップがないと、なかなかクロールしてくれません。

サイトマップが登録できなくても、記事がインデックスされる理由

サイトマップが登録できなくても、記事がインデックスされる理由についてお伝えします。

通常、記事が検索エンジンにインデックスされるには、次のステップを踏みます。

  • URLの発見→クロール→インデックス

通常、クローラがURLを発見する方法は2通りあり、サイトへのリンクとサイトマップです。サイトやブログの構造が、トップページからリンクを辿って全てのページにアクセスできる場合、仮にサイトマップがなかったとしても、クローラはURLを検出できます。
はてなブログはトップページから全てのページにアクセスできる構造なので、Search Consoleにサイトマップが登録できなかったとしても、URLはインデックスされます。

もちろんサイトマップがあった方がより早くページを検出できますので、サイトマップがあるに越したことはありません。

さいごに

以上、はてなブログのサイトマップ登録できないときの対処方法をお伝えしました。

サイトマップは sitemap.xml を登録するだけでなく、 sitemap_index.xml と sitemap.xml?page=1 のサイトマップも追加すると、Search Consoleでサイトマップが認識されるようになります。