こんにちは、阿久梨絵です。
WordPressでSEO対策をしていると、ふと気になるのが「 post-sitemap.xml 」の挙動。
特に投稿数が多いサイトでは、post-sitemap.xmlが分割されて、post-sitemap2.xml〜post-sitemap5.xmlまで生成されることがあります。
今回は、「昨日の投稿がまだインデックスされていないのはなぜ?」という疑問に答えながら、サイトマップ分割の仕組みと登録タイミングの実態を解説します。
サイトマップ分割の仕組み
WordPressのSEOプラグイン(Yoast SEOやXML Sitemapsなど)は、1ファイルあたり最大1000件の投稿を記載するルールでサイトマップを分割します。
例
| 投稿数 | sitemap構成 |
|---|---|
| 1〜1000件 | post-sitemap.xml |
| 1001〜2000件 | post-sitemap2.xml |
| 2001〜3000件 | post-sitemap3.xml |
| … | … |
・新しい投稿が常に先頭に入るわけではない
・サイトマップの生成は「投稿ID順」や「公開日時順」ではなく、内部のクエリ結果に依存
・投稿数が5000件を超えると、post-sitemap6.xmlが生成される可能性もあるということ。
昨日の投稿が未登録に見える理由
「昨日投稿した記事が、Search Consoleで“未登録”になっている」
この現象、実はサイトマップの更新タイミングとGoogleのクロールタイミングのズレが原因です。
よくあるパターン
・投稿直後は post-sitemap.xml に追加される
・しかし、Googleがまだそのファイルを再クロールしていない
・結果として「未登録」や「検出されましたが未インデックス」の状態になる
未登録=サイトマップに載っていないではなく、Googleがまだ処理していないだけの可能性が高いです。
Search Consoleでの対策
・post-sitemap.xmlだけでなく、post-sitemap1〜5.xmlすべてをSearch Consoleに送信する
・もしくは、sitemap_index.xmlを送信すれば、全分割sitemapを一括管理可能
・投稿直後は「検出されましたが未インデックス」になることが多いが、数日で自動的に処理される
サイトマップの順送りはいつ起こる?
1. 投稿数が1000件を超えたとき
・多くのSEOプラグイン(Yoast SEOなど)は、1ファイルあたり最大1000件で分割します。
・投稿数が1001件になると、post-sitemap2.xmlが生成され、古い投稿が順送りされる。
2. 投稿の更新・削除・追加があったとき
・WordPressのサイトマップは動的に再構成されるため、投稿の追加・更新・削除に応じて内容が自動で調整されます。
・ただし、新しい投稿が常に post-sitemap.xml に入るとは限らず、投稿IDや内部クエリの順序によって、後方の post-sitemap2.xml や post-sitemap3.xml に配置されることもあります。そのため、新規投稿が必ず先頭のサイトマップに入るわけではなく、一部が後方に“点在”するような構成になることがあります。
・サイトマップの分割は通常1000件単位で行われますが、順送りのような動きは保証されていません。
3. プラグインのキャッシュ更新タイミング
・一部のSEOプラグインは、定期的なキャッシュ更新やcronジョブでサイトマップを再生成。
・投稿が追加された直後に反映されない場合でも、数時間〜1日以内に順送りが完了することが多い。
Search Consoleでの確認ポイント
・sitemap_index.xmlを送信しておけば、分割されたすべてのsitemapが自動的に認識される
・投稿直後に「未登録」と表示されても、順送りが完了すればインデックス対象になる
まとめ
WordPressのサイトマップは、ただのURLリストではなく、投稿の流れ・構造・更新性を反映したUX設計の一部です。
「昨日の投稿が未登録?」と焦る前に、サイトマップの分割構造とGoogleの処理タイミングを理解することで、冷静に対処できます。
今後も、こうした“見えない構造を見える化する技術記事”を発信していきます。
阿久梨絵でした!
