XMLサイトマップは、Webサイトの構造やコンテンツを検索エンジンに伝えるための仕組みです。XMLサイトマップを作成することで、検索エンジンがサイトを正確にクロールし、ユーザーにとって最適な検索結果を表示できます。
本記事では、XMLサイトマップの基礎知識から作成方法や登録方法、注意点まで、初心者でも分かりやすいように詳しく解説します。
XMLサイトマップとは?
「XMLサイトマップ」は、検索エンジンにサイトの構造や内容を知らせることができるXML形式のファイルのことです。
検索エンジンは、クローラーというプログラムを使ってWebページの情報を集め、それをもとに検索結果を表示しています。XMLサイトマップを利用することで、クローラーがサイト内のページを効率的かつ正確にサイトの構造を理解できるのです。
XMLサイトマップとHTMLサイトマップの違い
サイトマップには、HTMLサイトマップとXMLサイトマップの2種類あります。この2つのサイトマップの大きな違いは、ユーザー向けの情報か、クローラー向けの情報かという点だといえます。
HTMLサイトマップは、Webサイトの全体像を表すためのもので、ユーザーにとってのナビゲーションを目的として使用されます。一方、XMLサイトマップは、検索エンジンのクローラーにサイト構造を分かりやすく伝えるものです。
XMLサイトマップとSEOの関係
XMLサイトマップはSEOの観点からも非常に重要な役割を担っています。
XMLサイトマップがあることで、検索エンジンに対して自分たちのサイト内のページを正確に理解し、インデックスされるページ数を増やすことができます。複雑なサイトの構造や動画や画像が多いサイトでも、クローラーに伝えることが可能です。
さらにURLの数が膨大にある場合、XMLサイトマップを使うことで、読み込み速度がTOPからよりも速くなることから、SEO対策の効率化が可能になります。また、新しいサイトでもインデックスされるまでの時間を短縮できるでしょう。
XMLサイトマップが必要なサイト
XMLサイトマップは必ずしも全てのサイトに必要なわけではありません。サイトの各ページが適切にリンクされていれば、Googleは通常、サイトのほとんどのページを検出できます。
しかし、以下のような場合、GoogleはXMLサイトマップを設置することを推奨しています。
<XMLサイトマップの設置が推奨されるケース>
- サイトのページ数が多い
- サイトが新しい
- 動画や画像が多く含まれている
一方で、以下の場合はサイトマップは必要ない可能性が高いといえます。
<XMLサイトマップの設置が必要ない可能性が高いケース>
- サイトの規模が小さい(500ページ以下)
- サイトがサイト内で完全にリンクされている
- 検索結果に表示される必要がある動画や画像が多くない
XMLサイトマップが必要かどうかは、サイトの規模やコンテンツによって異なります。必要な場合には正しく設置し、クローラーに対してサイト内のページを正確に認識してもらいましょう。
XMLサイトマップを作成するには
XMLサイトマップは、WordPressのプラグインや自動生成ツールを使って簡単に作成することができます。それぞれの方法について説明します。
WordPressの場合はプラグインを使う
WordPressでサイトを運営している場合は、プラグインを使用する方法が便利です。
たとえば、「XML Sitemaps」というプラグインを使用することで、簡単にXMLサイトマップを作成できます。このプラグインは、サイト内のページを自動的に認識し、XMLサイトマップを生成します。
また、別のプラグインである「All in One SEO Pack」を使用してXMLサイトマップを作成することもできます。
ここでは、「XML Sitemaps」の導入方法を紹介します。
- WordPressの管理画面にログイン
- 画面左にあるメニューから「プラグイン」→「新規追加」をクリック
- 画面右の検索窓から「XML Sitemaps」を検索
- 「今すぐインストール」をクリック
- インストール後に「有効化」をクリック
- 画面左にあるメニューから「XML Sitemaps」をクリック
- 優先順位のチェック項目をチェック
- 一番下にある「設定を更新」のボタンをクリック
自動生成ツールを使う
WordPressのプラグインのほかに、無料で使える自動生成ツールもあります。たとえば、「sitemap.xml Editor」というツールです。
上記のリンクからアクセスし、WebサイトのURLを入力→サイトの更新頻度や優先度をチェックし、「サイトマップ作成」のボタンをクリックするだけでXMLサイトマップを作成することができます。インストールや登録は不要で、簡単な設定をするだけで使用可能です。
ただし、このツールには制限があり、最大1,000URLまでしか作成できません。したがって、サイトのページ数が1,000を超える大規模なサイトの場合は、有料ツールを使用する必要があるため注意してください。
XMLサイトマップの要素
XMLサイトマップは、以下の6つの要素で構成されています。
タグ |
必須/任意 |
用途 |
<urlset> |
必須項目 |
ほかのタグを囲み、プロトコル標準を参照する |
<url> |
必須項目 |
各ページの情報を設定するために使用される |
<loc> |
必須項目 |
各ページのURLを記述する |
<lastmod> |
任意項目 |
ページの最終更新日を記述する |
<changefreq> |
任意項目 |
ページの更新頻度を記述する |
<priority> |
任意項目 |
ページの優先度を記述する |
それぞれ解説していきます。
urlsetタグ
urlsetタグは、XMLサイトマップの必須項目であり、ほかのタグを囲み、プロトコル標準を参照するためのタグです。以下のような書式で表されます。
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
urlタグ
urlタグは、各ページの情報を設定するために使用されるタグで、必須項目の一つです。urlタグ内に、loc、lastmod、changefreq、priorityのタグを記述します。
たとえば、以下のような書式で表されます。
<loc>https://example.com/</loc>
<lastmod>2023-04-01</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
locタグ
locタグは、各ページのURLを記述するためのタグで、必須項目の一つです。locタグは、2,048文字以下で設定する必要があります。
以下のような書式で表されます。
lastmodタグ
lastmodタグは、任意項目であり、各ページの最終更新日を記述するためのタグです。各ページの最終更新日など日付は、W3C Datetime形式で記述します。時間を含めることも可能です。
形式 |
記述例 |
意味 |
YYYY-MM-DD |
2023-04-01 |
2023年4月1日 |
YYYY-MM-DDThh:mm:ssTZD |
2023-04-01T12:20:42+09:00 |
2023年4月1日12時20分42秒 ※グリニッジ標準時間から9時間進んでいること(日本のタイムゾーン)を表す |
たとえば、以下のような書式で表されます。
changefreqタグ
changefreqタグは、任意項目であり、各ページの更新頻度を記述するためのタグです。以下のような書式で表されます。
changefreqタグには、以下の更新頻度が設定できます。
- always:ページが常に更新されている場合
- hourly:ページが毎時更新されている場合
- daily:ページが毎日更新されている場合
- weekly:ページが毎週更新されている場合
- monthly:ページが毎月更新されている場合
- yearly:ページが毎年更新されている場合
- never:ページが更新されない場合
Googleでは、changefreqタグの値は、更新頻度の推定に使用されますが、必ずしも正確な更新頻度を示すわけではありません。そのため、Googleはこのタグを無視します。
priorityタグ
priorityタグは、任意項目であり、各ページの優先度を記述するためのタグです。以下のような書式で表されます。
priorityタグには、0.0から1.0までの範囲で値を設定することができます。値が高いほど、検索エンジンはそのページを優先的に処理する傾向があります。ただし、Googleはこのタグをchangefreqタグ同様に無視します。
以上のように、XMLサイトマップは、urlsetタグ、urlタグ、locタグ、lastmodタグ、changefreqタグ、priorityタグの6つの要素で構成されています。これらのタグを適切に使用することで、検索エンジンがサイト内のページを正確に認識することができます。
XMLサイトマップの書き方
基本のXMLサイトマップの書き方、動画サイトマップ、画像サイトマップ、ニュースサイトマップの書き方をそれぞれ紹介します。
基本のサイトマップの書き方
ここまでに紹介したタグを使って記述すると、以下のようなXMLサイトマップになります。
<urlset xmlns=”http://www.sitemaps.org/schemas/sitemap/0.9″> <url>
<loc>http://www.example.com/</loc>
<lastmod>2023-04-01</lastmod>
<changefreq>daily</changefreq>
<priority>0.8</priority>
</url>
</urlset>
動画サイトマップ
基本の記述に加え、ページ内に動画がある場合には、動画サイトマップを登録しましょう。検索エンジンに認識してもらいやすくなり、動画コンテンツが検索結果に表示されやすくなります。
動画サイトマップには、videoタグ、thumbnail_locタグ、titleタグ、descriptionタグ、player_locタグなどが含まれます。動画サイトマップで使われるタグはおもに以下の通りです。
タグ |
必須/任意 |
用途 |
<video:video> |
必須項目 |
ページ内の動画に関する情報を指定する親タグ |
<video:thumbnail_loc> |
必須項目 |
動画のサムネイル画像のURLを記述する |
<video:title> |
必須項目 |
動画のタイトルを記述する |
<video:description> |
必須項目 |
動画の説明を記述する 最大で2,048文字 |
<video:content_loc> |
必須項目 |
動画メディアファイルのURLを記述する |
<video:player_loc> |
必須項目 |
動画の再生に使用するプレーヤーのURLを記述する |
<video:duration> |
任意項目 |
動画の再生時間を記述する ~28800(8時間)の範囲で秒単位で指定可能 |
<video:expiration_date> |
任意項目 |
動画の利用期限を記述する 有効期限がない場合は、このタグを省略 指定できる値は、完全な日付(YYYY-MM-DD)か、完全な日付に時、分、秒、タイムゾーンを加えた値(YYYY-MM-DDThh:mm:ss+TZD) |
<video:rating> |
任意項目 |
動画の評価を記述する 値は、0.0(低)~5.0(高)の範囲 |
<video:view_count> |
任意項目 |
動画の再生回数を記述する |
<video:publication_date> |
任意項目 |
動画を最初に公開した日を記述する 指定できる値は、完全な日付(YYYY-MM-DD)か、完全な日付に時、分、秒、タイムゾーンを加えた値(YYYY-MM-DDThh:mm:ss+TZD) |
画像サイトマップ
ページ内に画像がある場合には、画像サイトマップを登録すると検索エンジンに認識され、画像検索の結果に表示されやすくなります。
画像サイトマップには、imageタグ、locタグ、titleタグ、captionタグ、geo_locationタグなどが含まれます。画像サイトマップで使われるタグはおもに以下の通りです。
タグ |
必須/任意 |
用途 |
<image:image> |
必須項目 |
各画像に関する情報を記述する親タグ<url>タグごとに最大1,000の<image:image>タグを含めることができる |
<image:loc> |
必須項目 |
画像のURLを記述する |
ニュースサイトマップ
ニュースサイトマップは、ニュース記事を検索エンジンに通知するために使用されます。登録することで、Googleニュースに表示されやすくなります。
ニュースサイトマップには、newsタグ、publicationタグ、accessタグ、titleタグ、keywordsタグなどが含まれます。ニュースサイトマップで使われるタグはおもに以下の通りです。
タグ |
必須/任意 |
用途 |
<news:news> |
必須項目 |
各ニュース記事に関する情報を記述する親タグ 各urlタグには、1つのnews:newsタグのみ含められ、サイトマップには最大1,000個のnews:newsタグを含めることができる |
<news:publication> |
必須項目 |
ニュースが掲載されているメディアの情報を記述する <news:name>タグと<news:language>タグの親タグ |
<news:name> |
必須項目 |
メディアの名前を記述する |
<news:language> |
必須項目 |
メディアの言語を記述する ISO639言語コードで指定(日本語はjpn) |
<news:publication_date> |
必須項目 |
ニュース記事の掲載日を記述する 指定できる値は、完全な日付(YYYY-MM-DD)か、完全な日付に時、分、秒、タイムゾーンを加えた値(YYYY-MM-DDThh:mm:ss+TZD) |
<news:title> |
必須項目 |
ニュース記事のタイトルを記述する |
XMLサイトマップを登録する方法
XMLサイトマップを作成したら、それを検索エンジンに知らせる必要があります。検索エンジンがXMLサイトマップを認識する方法は2つあります。
- Google Search Console(サーチコンソール)を使う方法
- robots.txtを使う方法
それぞれの方法について解説します。
Google Search Console(サーチコンソール)を使う方法
Google Search ConsoleにXMLサイトマップを登録することで、Googleにクロールされやすくなります。Google Search Consoleでサイトマップを送信する手順は以下の通りです。
- Google Search Consoleにログインし、対象のサイトを選択
- メニューから「サイトマップ」をクリック
- 「新しいサイトマップの追加」にサイトマップのURLを入力
- 「送信」ボタンをクリック
サイトマップを送信した後、正しく送信できたかどうかは「送信されたサイトマップ」のステータスから確認できます。「成功しました」と表示されていたら完了です。
▼Google Search Consoleの使い方は、こちらの記事でも詳しく解説しています。
【初心者向け】Googleサーチコンソールの基本的な使い方|設定と活用方法を解説
robots.txtを使う方法
robots.txtファイル内にXMLサイトマップのURLを記述することで、検索エンジンにサイトマップの場所を伝えることができます。以下は、robots.txtファイルにXMLサイトマップを記述する例です。
これによりGoogleは、次にrobots.txtファイルをクロールする際に、その変更を認識します。
XMLサイトマップを作成する際に注意すること
XMLサイトマップを作成する際には、以下3つの点に注意しましょう。
URLの表記揺れはないか
URLには、「www」の有無や「http」か「https」かなど、表記揺れがある場合があります。
表記揺れがあると、検索エンジンは同じページを重複してクロールし、サイトのクロール効率が低下する可能性があります。そのため、正規化されたURLを登録することが望ましいでしょう。
URLが正規化されていることで、検索エンジンがサイトをスムーズにクロールし、ユーザーの検索結果に正確に表示することができます。
▼URLの正規化について詳しく知りたい方は、こちらの記事をご覧ください。
URL正規化とは?必要なケースと設定方法・注意点を解説
ファイルサイズの上限を超えていないか
XMLサイトマップのファイルサイズには上限があります。1ファイルの容量は、圧縮されていない状態で50MB以下、URLは50,000件までとされています。
大きなサイトだと、この制限によってXMLサイトマップを1つのファイルにまとめることができない場合があります。その際は、複数のXMLサイトマップに分割する必要があります。
XMLサイトマップのファイルサイズが上限を超えている場合、検索エンジンはサイト全体を正確にクロールできないため、ページのインデックスが遅れる可能性があります。ファイルサイズの上限を超えないよう、必要に応じてXMLサイトマップを分割することをおすすめします。
noindexタグは入っていないか
XMLサイトマップに含まれるページにnoindexタグが設定されている場合、そのページは検索エンジンの検索結果に表示されません。そのため、XMLサイトマップを作成する前に、noindexタグを外して、対象ページをインデックス可能にする必要があります。
▼noindexについて詳しく知りたい方は、こちらの記事をご覧ください。
noindexとは?SEO対策における正しい設定方法と注意点を解説
まとめ
本記事では、XMLサイトマップの基礎知識、作成方法、登録方法や注意点について解説しました。
XMLサイトマップは、検索エンジンがwebサイトの構造やコンテンツを理解するために必要なものであり、適切に作成することでサイトのSEOを最適化できます。
WordPressのプラグインや自動生成ツールを使い、手軽にXMLサイトマップを作成することができます。XMLサイトマップを正しく作成し、検索エンジンに正確な情報を伝え、サイトの集客やユーザーエクスペリエンス向上につなげましょう。
SEデザインでは、さまざまなコンテンツマーケティングの支援を行っております。貴社に最適な施策やプランをご提案させていただきますので、ぜひお気軽にお問い合わせください。