まず結論から言うと
サイトマップ、これって何だろう。考えたことある?
要は、サイトの「地図」みたいなもの。でも、地図には2種類ある。ひとつは、サイトに来てくれた人向けの地図(HTMLサイトマップ)。もうひとつは、Googleとかの検索エンジン向けの地図(XMLサイトマップ)。
正直、SEOで大事なのは後者のXMLサイトマップ。これがあると、Googleのロボット(クローラー)がサイトの中を迷わず回れるようになる。 新しいページを作ったり、更新したときに「ここ見てね」って伝えやすくなるんだ。
でも、ただ作ればいいってもんじゃない。それが今日のポイントかな。作ること自体は難しくないけど、その「意味」をちゃんと分かってないと、効果も半減しちゃうかもしれない。
HTMLとXML、何が違うの?
この2つ、よく混同されるから、ちょっと整理してみようか。 自分用のメモみたいな感じだけど、表にしてみる。
| 項目 | HTMLサイトマップ | XMLサイトマップ |
|---|---|---|
| 誰のため? | サイト訪問者(人間) | 検索エンジン(機械) |
| 目的は? | サイト内の道案内。ユーザビリティ向上。 | クロールの促進。インデックス登録の手助け。 |
| 見た目は? | 普通のWebページ。リンク集みたいになってる。 | ただのコードの羅列。人間が直接見ることは少ない。 |
| SEOへの直接効果は? | ほぼ無い、と言われてる。 でも、ユーザーが使いやすいサイトは結果的に評価されるかも。 | あり。特に新しいサイトや、ページ数がすごく多いサイトで効果を発揮する。 |
| 設置場所 | フッターとか、誰でも見つけやすい場所。 | サーバーのルートディレクトリ。 そしてSearch Consoleで場所を教える。 |
うん、こう見ると全然違うものだね。HTMLサイトマップは「おもてなし」、XMLサイトマップは「事務連絡」って感じかな。昔はHTMLサイトマップもSEOに意味があったみたいだけど、今は役割分担がはっきりしてる。
じゃあ、どうやって作るの?
作成方法。これもいくつかある。手動で作るか、ツールを使うか。正直、今はツールを使うのがほとんどかな。
WordPressならプラグインが楽
もしサイトがWordPressなら、もう何も考えずにプラグインでいいと思う。例えば「XML Sitemaps」とか「All in One SEO Pack」みたいな有名なやつなら、大体機能がついてる。
インストールして有効にすれば、あとは基本的な設定をするだけ。新しい記事を公開したら自動でサイトマップに追加してくれるから、本当に楽。 「どのページを含めるか」とか、「更新の優先度はどうするか」とかも設定できるけど、最初はデフォルトでも大丈夫かな。
ツールで自動生成もできる
WordPressじゃないサイトでも、自動生成ツールがある。例えば「Screaming Frog SEO Spider」みたいな専門的なツールとか、Web上でURLを入れるだけで作ってくれる簡単なサービスとか。
作ったファイル(sitemap.xml)をサーバーにアップロードして、Google Search Consoleで「このURLにサイトマップ置きましたよ」って知らせる感じ。
大事なのは、作った後
作って終わりじゃない。Google Search Consoleに登録(送信)しないと意味がないからね。
- Google Search Consoleにログインする。
- メニューから「サイトマップ」を選ぶ。
- 「新しいサイトマップの追加」に、サイトマップのURL(例: /sitemap.xml)を入力して送信。
これだけ。 しばらくすると、Googleがサイトマップを読み込んで、「ステータス」が「成功しました」になるはず。もしエラーが出たら、何かがおかしいってこと。
あと、robots.txtにサイトマップの場所を書いておくのも丁寧な方法だね。
ちょっと特殊なケースの話
普通のブログなら今までの話で十分だけど、世の中には色々なサイトがある。例えば…
大規模サイトやニュースサイト
何万ページもあるようなECサイトとかだと、サイトマップを1つのファイルにまとめると巨大になりすぎる。そういう時は、ファイルを分割する。 カテゴリごととか、商品ページとブログ記事で分けるとか。
Googleの公式ドキュメント(これは英語だけど、一番正確)を見ると、ニュースサイト向けの特別なサイトマップについても言及がある。普通のサイトマップとは別に、過去2日間に公開された記事だけを載せることで、新しいニュースを素早くGoogleニュースに載せてもらうのを手伝う、みたいな仕組み。
日本の一般的なSEOブログだと、ここまで言及してるのは少ないかもしれないけど、こういう専門的なサイトを運営するなら知っておくべきことだね。
多言語サイトの場合
これもちょっと特殊。同じ内容で日本語ページと英語ページがある場合、「このページとこのページは同じ内容の別言語版ですよ」ってGoogleに教える`hreflang`っていうタグがあるんだけど、これをサイトマップに書くこともできる。サイトが大きくなると、HTMLに全部書くより管理が楽になったりする。
よくある誤解と注意点
最後に、サイトマップについてよく勘違いされてること。これもメモしておこう。
- 送信すればインデックスされるわけじゃない。 あくまで「こういうページがありますよ」っていう推薦状みたいなもの。載せるかどうか決めるのはGoogle。コンテンツの質が低ければ、サイトマップにあっても無視される。
- `priority`(優先度)タグは、もうGoogleは見てない。 昔は「このページは優先度0.9です」みたいに設定できたけど、Googleの人が「今はもう使ってない」って明言してる。だから、この設定に時間をかける意味はあまりない。
- `noindex`のページは含めちゃダメ。 「インデックスしないで」って言ってるページを「インデックスしてほしいリスト」に入れるのは矛盾してる。Search Consoleでエラーの原因になる。 - 更新したら、サイトマップも更新する。 `lastmod`(最終更新日)のタグは、Googleが見ている重要な情報。 ページを更新したのにサイトマップの日付が古いままだと、クロールの機会を逃すかもしれない。
結局のところ、サイトマップはGoogleとの対話ツールの一つってことだね。正しく、正直にサイトの情報を伝えることが大事。嘘をついたり、古い情報を渡し続けたりすると、信頼を失う…っていうのは、人間関係も検索エンジンも同じなのかも。
