サイトマップ
Sitemap
概要(サマリー)
サイトマップとは、サイト内にどんなページがあるかを一覧化し、ユーザーや検索エンジンがページを見つけやすくするための案内情報のことである。
特にSEOの文脈では、sitemap.xml というXML形式のファイルを指すことが多い。これは、検索エンジンに「このサイトにはこういうページがあります」と伝えるための地図のような役割を持つ。初心者向けには、サイトマップは「サイト内ページの住所録」であり、検索エンジンにページを見つけてもらいやすくするための補助資料だと考えるとわかりやすい。
詳細解説
サイトマップは「サイト内ページの一覧表」である
Webサイトには、トップページ、記事ページ、カテゴリーページ、商品ページ、固定ページなど、さまざまなページがある。
ページ数が少ないうちは人間でも全体を把握しやすいが、サイトが大きくなると、どこにどんなページがあるのか分かりにくくなる。
そこで使われるのがサイトマップである。
サイトマップは、サイト内のページを整理して一覧化するためのものだ。
たとえば、次のような情報をまとめることがある。
- ページURL
- 最終更新日
- ページの重要度
- 更新頻度
- 画像や動画情報
ただし、どの情報を含めるかはサイトマップの種類や目的によって変わる。
また、priority や changefreq のような情報は仕様上含められることがあるが、Googleでは基本的に重視されない。現在は、正確な lastmod や正規URLを整理して伝えることのほうが重要である。
初心者のうちは、まず「サイト内のページを検索エンジンやユーザーに伝えるための一覧」と覚えるとよい。
XMLサイトマップとは何か
SEOで特によく出てくるのが XMLサイトマップ である。
これは、検索エンジン向けに作るXML形式のサイトマップで、一般的には sitemap.xml というファイル名で設置される。
たとえば、次のような形で書かれる。
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://example.com/</loc>
<lastmod>2026-05-18</lastmod>
</url>
<url>
<loc>https://example.com/about/</loc>
<lastmod>2026-05-18</lastmod>
</url>
</urlset>
ここでは、<loc> にページのURL、<lastmod> に最終更新日を書いている。
検索エンジンはこの情報を参考にして、サイト内のページを見つけやすくなる。
なぜサイトマップが必要なのか
検索エンジンは、通常はリンクをたどってページを発見する。
しかし、すべてのページが分かりやすくリンクされているとは限らない。
たとえば、次のようなページは発見されにくいことがある。
- 新しく公開したばかりのページ
- 内部リンクが少ないページ
- 階層が深いページ
- 静的HTMLで生成したページ
- 大量にある商品ページや用語ページ
- 画像や動画が中心のページ
サイトマップを用意しておくと、検索エンジンにページの存在を伝えやすくなる。
つまりサイトマップは、検索エンジンがサイト全体を把握するための補助資料である。
サイトマップを送れば必ずインデックスされるのか
ここは重要である。
サイトマップにURLを入れたり、Search Consoleに送信したりしても、そのページが必ずインデックスされるわけではない。
サイトマップは、あくまで検索エンジンにページの存在を知らせるための手段である。
実際にインデックスするかどうかは、検索エンジンがページ内容、重複、品質、canonical、noindex、内部リンクなどを見て判断する。
つまり、サイトマップは「ページを見つけてもらいやすくするもの」であり、「検索結果に必ず出す予約券」ではない。
Search Console との関係
XMLサイトマップは、Search Console からGoogleに送信できる。
Search Consoleのサイトマップ機能に sitemap.xml のURLを登録すると、Googleがそのサイトマップを読み取り、送信されたURLの状態を確認できる。
たとえば、次のようなURLを送信する。
https://example.com/sitemap.xml
Search Consoleでは、サイトマップが正常に取得できたか、送信されたURLのうちどれくらいが検出されたかなどを確認できる。
新しいページを増やしていくサイトでは、サイトマップ送信は基本的なSEO作業のひとつである。
robots.txt との関係
robots.txt は、検索エンジンのクローラーに対して、どの場所をクロールしてよいか、または避けてほしいかを伝えるためのファイルである。
robots.txt には、サイトマップの場所を書くこともできる。
User-agent: *
Disallow: /wp-admin/
Allow: /wp-admin/admin-ajax.php
Sitemap: https://example.com/sitemap.xml
このように書くことで、検索エンジンにXMLサイトマップの場所を知らせることができる。
ただし、robots.txtに書いたからといって、すべてのページが必ずインデックスされるわけではない点は同じである。
HTMLサイトマップとの違い
サイトマップには、検索エンジン向けのXMLサイトマップだけでなく、ユーザー向けのHTMLサイトマップもある。
- XML Sitemap
検索エンジン向け。機械が読みやすい形式でURL一覧を伝える - HTML Sitemap
ユーザー向け。人間がサイト内ページを探しやすいように一覧化する
たとえば、用語集サイトなら「全用語一覧」や「カテゴリ別一覧」のようなページがHTMLサイトマップ的な役割を持つことがある。
検索エンジン向けにはXMLサイトマップ、人間向けには一覧ページやナビゲーションを整える、と考えると分かりやすい。
Navigation との違い
サイトマップと Navigation も近いが、役割は少し違う。
- Sitemap
サイト全体のページ一覧や構造を伝えるもの - Navigation
ユーザーが実際にサイト内を移動するためのメニューや導線
たとえば、ヘッダーメニューやパンくずリストはNavigationである。
一方、サイト内のURL一覧をまとめた sitemap.xml や全ページ一覧はSitemapである。
どちらもサイト内の移動や発見に関係するが、Navigationは日常的な導線、Sitemapは全体把握や検索エンジン向けの案内という意味合いが強い。
RSSとの違い
RSS は、サイトの新着記事や更新情報を配信するためのフィードである。
サイトマップとは目的が違う。
- Sitemap
サイト内に存在するページを検索エンジンなどへ伝える - RSS
新着記事や更新情報を購読・配信する
ブログでは、sitemap.xml と feed や rss.xml のようなフィードが両方存在することがある。
似たようにURL一覧を含む場合もあるが、サイトマップはページ発見の補助、RSSは更新情報の配信と考えると整理しやすい。
サイトマップに入れるべきページ
XMLサイトマップには、基本的に検索結果に出したい重要なページを入れる。
たとえば、次のようなページである。
- トップページ
- 主要な固定ページ
- ブログ記事
- 用語詳細ページ
- 商品ページ
- カテゴリーページ
- Webアプリの公開ページ
一方で、次のようなページは入れない、または慎重に扱うことが多い。
- noindexにしているページ
- 重複ページ
- 管理画面
- テストページ
- 検索結果に出したくないページ
- パラメータ付きURL
サイトマップは「検索エンジンに見つけてほしいURL」を整理して渡すものなので、何でも入れればよいわけではない。
lastmodとは何か
XMLサイトマップでは、lastmod という項目が使われることがある。
これは、そのページの最終更新日を示す情報である。
<lastmod>2026-05-18</lastmod>
lastmod が適切に入っていると、検索エンジンがページ更新の参考にしやすくなる。
ただし、実際にクロールするかどうかは検索エンジン側の判断であり、lastmod を入れたから必ずすぐクロールされるわけではない。
また、ページ内容が変わっていないのに毎日 lastmod だけを更新するような運用は、あまり自然ではない。
実際に内容を更新した日付を入れるのが基本である。
静的HTMLサイトでのサイトマップ
WordPressのようなCMSでは、SEOプラグインや標準機能でサイトマップが自動生成されることがある。
一方、WordPressの外に静的HTMLを置く場合は、自分でサイトマップを作る必要があることが多い。
たとえば、用語ページを静的HTMLとして増やしていく場合は、生成済みHTMLの一覧から static-sitemap.xml のようなXMLサイトマップを作る方法がある。
https://example.com/static-sitemap.xml
このように、AIやPythonで静的HTMLを生成する運用では、HTML生成と同時にサイトマップも自動生成すると管理しやすい。
サイトマップ作成時の注意点
URLを正規化する
http と https、www ありなし、末尾スラッシュなどが混ざると分かりにくくなる。
canonicalと合わせて、正規URLをサイトマップに入れるのが基本である。
存在しないURLを入れない
404になるURLをサイトマップに含めると、検索エンジンに不要なURLを伝えてしまう。
noindexページを入れない
noindexにしているページをサイトマップに入れると、「見つけてほしいのか、出したくないのか」が矛盾しやすい。
リダイレクト元URLを入れない
301リダイレクトされる旧URLではなく、最終的に表示される正規URLを入れる。
更新時にサイトマップも更新する
ページを追加・削除・変更したら、サイトマップも合わせて更新する必要がある。
自動生成にしておくと、この手間を減らしやすい。
AI時代にサイトマップの理解が重要な理由
AIを使うと、記事、用語ページ、Webアプリ、静的HTMLページなどを短時間で増やせる。
しかし、ページを作るだけでは、検索エンジンがすぐにすべてを発見してくれるとは限らない。
特に、AIで大量の静的HTMLページを生成する場合、サイトマップは重要になる。
たとえば、次のような運用で役立つ。
- 用語詳細ページを増やす
- Webアプリ一覧ページを増やす
- 英語版ページを追加する
- カテゴリ別ページを作る
- PythonでHTMLとサイトマップを同時生成する
- Search Consoleへ新しいサイトマップを送信する
つまりサイトマップは、AIで作ったページ群を検索エンジンに見つけてもらいやすくするための整理表である。
作ったページを検索流入につなげるなら、HTML生成だけでなくサイトマップ生成までセットで考えるとよい。
初心者向けの理解の仕方
最初は、サイトマップを「サイト内ページの住所録」と覚えれば十分である。
特にSEOでは、次のように考えると分かりやすい。
- XMLサイトマップ = 検索エンジン向けの住所録
- HTMLサイトマップ = ユーザー向けの案内ページ
- Search Console = サイトマップをGoogleに送る場所
- robots.txt = サイトマップの場所も書ける案内ファイル
サイトマップは検索順位を直接上げる魔法ではないが、ページを発見してもらいやすくするための基本的な整備である。
よくある勘違い
サイトマップを送れば必ず検索結果に出る?
違う。
サイトマップはページの存在を伝えるものであり、インデックス登録や上位表示を保証するものではない。
サイトマップ = サイトのメニュー?
同じではない。
メニューはユーザーが移動するためのNavigationで、サイトマップはサイト全体のページ一覧や検索エンジン向けのURL一覧である。
sitemap.xmlには全URLを何でも入れればよい?
そうではない。
基本的には、検索結果に出したい正規URLを入れる。noindexページ、404ページ、リダイレクト元URLなどは避けたほうがよい。
robots.txtとサイトマップは同じ?
違う。
robots.txtはクローラーへのクロール制御を伝えるファイルで、サイトマップはページ一覧を伝えるファイルである。
WordPressならサイトマップを気にしなくてよい?
完全に放置でよいとは言えない。
デフォルトの機能やプラグインなどで自動生成できるが、Search Consoleに送信されているか、不要なページが混ざっていないか、優先順位に問題はないか、静的HTML側のページが含まれているかは確認したほうがよい。
まとめ
- サイトマップは、サイト内にどんなページがあるかを一覧化し、ユーザーや検索エンジンがページを見つけやすくするための案内情報のこと。
- 関連する用語や実際の作業場面と一緒に理解すると、使いどころを判断しやすい。
- AIコーディングでは、用語の意味を理解しているほど、AIの説明や生成コードを確認しやすくなる。
- 迷ったときは、エラー内容、目的、前提条件を整理してAIに聞くとよい。
より詳しくAIに聞いてみよう
- サイトマップとは何かを、中学生でもわかるように具体例つきで説明してください。
- XMLサイトマップとHTMLサイトマップの違いを、初心者向けに整理してください。
- Search Consoleにsitemap.xmlを送信する意味を教えてください。
- 静的HTMLページを増やすときのサイトマップ自動生成方法を相談したいです。
- サイトマップに入れるべきURLと入れないほうがよいURLを整理してください。