XMLサイトマップは送信前にURLをそろえ、更新後も確認する
公開日: 執筆:佐藤
XMLサイトマップは、検索エンジンに知ってほしいページのURLをまとめたXMLファイルです。作る順番は、生成機能を選ぶことからではありません。まず、検索結果へ出したいページと、そのページを表す一つのURL(正規URL)を決めます。その一覧からXMLを作り、公開場所で読めることを確かめてから送信します。
送信は、掲載や順位を約束する手続きではありません。sitemaps.orgのサイトマップ説明とGoogleのSitemaps FAQは、サイトマップが通常のURL発見を補う一方、掲載やクロールを保証しないと説明しています。サイト内のリンクとページ本文を整える仕事は、サイトマップを送っても残ります。
人向けの案内ページと、XMLサイトマップを分ける
会社サイトには、「サイトマップ」という名前の案内ページが置かれることがあります。これは、訪問者がページを探すためのHTMLページです。検索エンジンへ送るXMLサイトマップとは、形式も役割も違います。
HTMLの案内ページとXMLサイトマップの違いは、双方に用途があると説明しています。HTMLの案内ページは、訪問者と、リンクをたどる検索エンジンのために使います。XMLサイトマップは、URLと更新情報を一定の形式で検索エンジンへ伝えるために使います。
どちらか一方を作れば、もう一方が不要になるとは限りません。この記事では、検索エンジンへ知らせるXMLファイルだけを扱います。
XMLを書く前に、掲載するURLを一つに決める
同じ内容へ複数のURLから到達できる場合は、サイトマップへ全部を並べません。代表URLをサイトマップで示す説明は、同じ内容を示すURLが複数あるとき、表示してほしいURLをサイトマップへ含めることが、希望を伝える手掛かりになるとしています。ただし、そのURLが必ず検索結果へ表示されるという保証ではありません。
送信前に、ページごとに次の表を作ります。
| ページ | 検索結果へ出したいか | 掲載するURL | 確認すること |
|---|---|---|---|
| 公開中の主要ページ | 出したい | 実際に使う一つのURL | ブラウザで開け、本文とページ名が予定どおりか |
| 同じ内容を示す別URL | 一方へそろえる | 表示してほしいURL | メニューや本文のリンクも同じURLを使っているか |
| 移転前の旧URL | 原則として新URLへ交代 | 移転先のURL | 旧URLから移転先へ案内できるか |
| 試験中または社内用のページ | 出さない | 掲載しない | 一般公開するページと混ざっていないか |
| 公開を終了したページ | 出さない | 一覧から外す | 古いURLを開いた人への案内を別に決めたか |
URLは、httpまたはhttpsから始まる完全な形で記録します。wwwの有無、通信方式、末尾のスラッシュなど、見た目が少し違うだけでも別の文字列です。サイトマップだけをそろえるのではなく、メニュー、記事本文、案内資料で使うURLも照合します。
このURL一覧が、サイトマップの元帳です。生成機能が出したファイルを正本にすると、不要なURLを誰が外し、新しいURLを誰が承認したのか分からなくなります。事業者側で掲載方針を決め、制作担当者がXMLへ反映する役割に分けます。
最小限のXMLは、URLだけでも作れる
Sitemaps 0.9の公式XMLスキーマでは、urlsetの中へページごとのurlを置き、その中へlocを置きます。locはURLを示す必須項目です。lastmod、changefreq、priorityは任意です。
次は、形式を示すための簡略化した仮例です。実在する会社やサイトの設定ではありません。
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://www.example.com/</loc>
<lastmod>2012-06-30</lastmod>
</url>
<url>
<loc>http://www.example.com/service/</loc>
</url>
</urlset>
lastmodには、そのページを最後に変更した日を入れます。サイトマップを作り直した日ではありません。サイトマップの更新日に関する説明は、更新日などの情報を正確に把握できないなら、推測値を作るより、その項目を省く方がよいとしています。
changefreqは更新頻度の見込み、priorityは同じサイト内での相対的な優先度を伝える項目です。Sitemaps 0.9のスキーマは、changefreqを命令ではなく提案として扱っています。priorityに関する説明も、検索順位を上げる値ではないとしています。すべてのURLへ同じ値を埋めるための作業は、後回しで構いません。
担当者が同じでも、役割は分けて記録する
小規模なサイトでは、一人が複数の役割を担当できます。それでも、責任は分けて記録します。
| 役割 | 決めること・行うこと |
|---|---|
| 掲載方針を決める人 | 検索結果へ出したいページと、代表にするURLを承認する |
| XMLを作る人 | URL元帳からXMLを生成し、文字化けや記述誤りを確かめる |
| サーバーへ置く人 | 決めた公開場所へファイルを置き、外部から開けることを確かめる |
| 送信と確認をする人 | 検索エンジンへ場所を知らせ、処理状況とエラーを確認する |
| 更新を受け付ける人 | 新設、移転、公開終了をURL元帳とXMLへ反映する |
外部へ制作を依頼しても、掲載するURLの最終判断と、送信後の確認記録は、事業者側にも残します。Googleウェブマスターツールを使う場合は、担当変更後も事業者が入れるアカウントを用意し、サイトの確認状態を記録します。作業を委託することと、確認する権限まで手放すことを分けます。
公開場所で読めることを確かめてから送信する
XMLを作っただけでは、検索エンジンはその場所を知りません。robots.txtでサイトマップを知らせる説明は、サイトマップの完全なURLをrobots.txtへ記載する方法を案内しています。
Sitemap: http://www.example.com/sitemap.xml
サイトマップの送信方法に関する説明は、Googleウェブマスターツールから送信すると、処理上の問題や追加の統計を確認できるとしています。サイトマップ統計の説明では、送信したURL数とインデックスされたURL数、サイトマップ固有の警告やエラーを確認できます。
送信前に、サイトマップのURLをブラウザで開きます。次に、XML内から複数のURLを選び、ログインしていない状態でページを開きます。ファイルが存在するだけでなく、掲載したページへ実際に到達できることを確かめます。
送信後の表示は、二つに分けて読みます。
- サイトマップを取得できない、または処理できないという警告やエラーは、ファイルの公開場所、XML、URLを点検する材料です。
- 送信したURL数とインデックスされたURL数の差は、それだけではXMLの誤りを意味しません。サイトマップはインデックスを保証しないためです。
「送信済み」という表示は、制作作業の完了を示すだけです。ページが検索結果に載ったことや、読者の疑問へ答えていることまでは示しません。
ページを変えたら、URL元帳から更新する
更新時は、XMLだけを直接直しません。先にURL元帳を変更し、その結果からXMLを作り直します。
| サイトで起きた変更 | URL元帳とXMLで行うこと | 別に確認すること |
|---|---|---|
| 新しいページを公開した | 承認したURLを追加する | メニューや関連ページから到達できるか |
| 同じURLの本文を変更した | URLを保ち、正確に管理できる場合だけlastmodを変える |
ページ名、本文、内部リンクが一致するか |
| ページのURLを変えた | 旧URLを新URLへ差し替える | 旧URLから新URLへの案内と、既存リンクの修正 |
| ページの公開を終了した | URLを一覧から外す | 古いURLへアクセスした人への応答 |
更新後は、同じ公開場所のXMLを開き直し、変更したURLを検索します。Googleウェブマスターツールでは、処理状況と警告・エラーを確認します。再通知が必要な場合は、その時点の検索エンジンの手順に従います。
lastmodの日付を変える作業と、ページ本文を更新する仕事は同じではありません。更新していないページの日付まで一律に変えると、元帳としての意味が薄れます。
最初の一手は、生成機能を探すことではありません。現在公開しているページを並べ、各ページについて「検索結果へ出したいか」「代表にするURLはどれか」を一行ずつ決めてください。その一覧ができてから、XMLへ変換します。
関連記事

