SEOのためのXMLサイトマップへの究極のガイド
公開: 2021-11-29サイトマップが機能するためにサイトマップは必要ありませんが、サイトマップを追加すると、検索エンジンによるWebサイトのクロールとインデックス作成にプラスの影響を与える可能性があります。
一方、サイトマップの最適化が不十分だと、クロール予算に悪影響を及ぼし、検索エンジンが貴重なコンテンツを見落とすリスクがあります。
このガイドは、サイトマップとは何か、サイトマップに何を含めるか、なぜサイトマップが必要なのかを理解するのに役立ちます。
サイトマップとは
XMLサイトマップは、WebサイトのURLを一覧表示するテキストファイルです。 これは、検索エンジンボットのデジタルマップとして機能し、検索エンジンにインデックスを付けたい貴重なページを見つけるのに役立ちます。
サイトマップには独自のURLがあり、サイトのサーバーのどこにでも配置できます。 ただし、これらは親ディレクトリの子孫にのみ影響します。 したがって、すべてのページに影響を与えるには、サイトマップをルートディレクトリに追加する必要があります。
www.example.com/sitemap.xml
サイトマップへのリンクは、robots.txtファイルに含まれている必要があります。 これを行うには、ファイルの最初または最後に次のディレクティブを使用します。
サイトマップ: http: //www.example.com/sitemap.xml
必ずしもrobots.txtファイルにサイトマップを配置する必要はありませんが、GoogleやBing以外の検索エンジンを含め、ほとんどのボットがサイトマップを見つけるのに役立ちます。 たとえば、 SeznamとYandexはどちらもrobots.txtからサイトマップディレクティブを読み取ることができます。出典: Renata Gwizdak、OnelyのジュニアSEO
サイトマップが役立つ理由
サイトマップを持つことはあなたのウェブサイトに多くの利点をもたらします。 何よりもまず、検索エンジンがインデックスを作成するコンテンツを見つけるのに役立ちます。
理想的な世界では、適切に設計されたサイトアーキテクチャにより、ユーザーと検索エンジンが問題なくすべてのページにアクセスできるようになります。

残念ながら、Webサイトの構造は複雑になる可能性があり、検索エンジンボットがすべてのページを簡単に見つけられるとは限りません。
サイトマップは、クローラーがサイト上のリンクをたどる必要をなくし、URLをわかりやすい形式で表示します。これにより、検索エンジンがサイト上のすべての重要なページを簡単に見つけることができます。
- サイトマップにページを含めることは、そのページがインデックスに登録されることを保証するものではありませんが、インデックス作成プロセスをスピードアップし、ユーザー側の信頼性を高めることができます。
- サイトマップは、クロール予算の使用を最適化するのに役立ちます。 これがないと、検索エンジンボットはWebサイト全体をクロールして、新鮮でインデックス可能なコンテンツを見つける必要があります。 その結果、質の低いページにアクセスするクロール予算を浪費し、より価値のあるページを見落とす可能性があります。
- サイトマップをGoogle検索コンソールに追加すると、サイトマップのURLに関するフィードバックを受け取ることができます。 そのため、ページに問題があり、Googleがそのページをクロールできない場合は、Google検索コンソールのカバレッジレポートを確認することでそのことを知ることができ、行動を起こす機会があります。
サイトマップが必要な人
XMLサイトマップはどのWebサイトにも役立ちます。安全のために、すべてのWebサイトにXMLサイトマップが必要です。 それでも、他の人よりも一部の人にとっては有益かもしれません。
サイトマップは、次の場合に絶対に必要です。
- あなたのウェブサイトにはたくさんのダイナミックなコンテンツがあります。 ページを頻繁に更新すると、検索エンジンボットが新しいコンテンツや更新されたコンテンツの一部を見逃す可能性があります。
- あなたは大きなウェブサイト(500ページ以上)を持っています。 Webサイトが大きいほど、検索エンジンボットが一部のページを見落とすリスクが高くなります。
- 新しいウェブサイトがあります。 残念ながら、新しいサイトには通常、外部リンクがほとんどまたはまったくありません。 その結果、クローラーはそれらを見つけるのに苦労する可能性があります。
- ページが孤立しているか、内部リンクが不十分です。 検索エンジンボットがリンクをたどってもページを見つけられない場合は、すべてのページを見つけられない可能性があります。
- リッチメディアコンテンツ(画像、ビデオ)がたくさんあります。 サイトマップを使用すると、検索エンジンのビジュアルコンテンツに関する追加情報(ビデオの実行時間、画像オブジェクトの問題など)を提供できます。
サイトマップに含めるもの
すべてのページがサイトマップに含まれるとは限りません。 それらすべてを入れると、低品質のページをクロールするためにクロール予算を浪費するリスクがあります。 これにより、検索エンジンにクロールするリソースがなかったために、インデックスに登録されていない高品質のページがサイトに残る可能性があります。
そのため、最も価値のあるコンテンツを含むインデックス可能なページのみを含めることが非常に重要です。
サイトマップに含めるページを確認してください。
- 200コードで応答します。
- robots.txtによってブロックされていません。
- noindexメタロボットタグを含めないでください。
- ページの正規バージョンです。
さらに、サイトマップに含めるべきではないページのリストを次に示します。
- コンテンツが薄いまたは重複しているページ、
- ページ付けされたページ、
- パラメータまたはセッションIDベースのURL、
- サイト検索結果ページ、
- アーカイブされたページ。
サイトマップコンポーネント
2つのURLを持つサイトマップの例を次に示します。
<?xml version =” 1.0” encoding =” UTF-8”?> <urlset xmls =” http://www.sitemaps.org/schemas/sitemap/0.9 ”> <url> <loc> https://www.example.com/ page1 </ loc> <lastmod> 2021-11-01 </ lastmod> <changefreq>毎週</changefreq> <priority> 0.6 </ priority> </ url> <url> <loc> https://www.example.com/ page2 </ loc> <lastmod> 2021-11-03 </ lastmod> <changefreq>毎週</changefreq> <priority> 1 </ priority> </ url> </ urlset>
次に、各要素を見てみましょう。
<?xml>および<urlset>タグ
<?xml>タグと<urlset>タグはどちらも基本的なXMLコンポーネントです。 それらは、エンコーディング標準とXMLバージョンを定義します。
<url>タグ
すべての<url>タグは、個々のURLを記述します。 内部には、次のタグがあります。
- <loc>(必須)、
- <lastmod>(オプション)、
- <changefreq>(オプション)、
- <優先度>(オプション)。
<loc>タグ
<loc> https://www.example.com/page1 </ loc>
<loc>タグは「 location 」の略で、ページのURLが含まれています。
サイトプロトコル(HTTPまたはHTTPS)を指定することを忘れないでください。
あなたが国際的なウェブサイトを持っていて、 hreflangタグを含んでいるなら、これはまた詳しく説明する場所です。 以下でhreflangタグの使用について説明します。
<lastmod>タグ
<lastmod> 2020-02-23 </ lastmod><lastmod>は「最終変更」の略で、最終変更に関する情報が含まれています。
コンテンツサイトの場合、このタグは、あなたが元の発行者であることをGoogleが証明するのに役立ちます。誰かがあなたのコンテンツをこすり取って自分のページに公開した場合、<lastmod>はあなたがGoogleの目にそのコンテンツの作成者であり続けるのに役立つ可能性があります。
注:このタグは、ページに意味のある変更を加えた場合にのみ更新する必要があります。 Googleをだまして、コンテンツを定期的に更新していないと思わせようとすると、Googleはこのタグを無視し始める可能性があります。
変更が潜在的なユーザーに違いをもたらすかどうかを判断します。 自問してみてください。変更が加えられた後、誰かがこのページに戻るのは理にかなっていますか? カンマを変更するだけの場合は、リスクを冒す価値はないでしょう。

<changefreq>タグ
<changefreq>毎週</changefreq><changefreq>タグは、「変更頻度」を表します。 ページが変更される可能性が高い頻度を検索エンジンに通知します。
次の値を取ることができます。
- 常に(ページにアクセスするたびにページが変更されることを指定します)、
- 毎時、
- 毎日、
- 毎週、
- 毎月、
- 毎年、
- 決して(アーカイブされたページに使用する必要があります)。
注: <changefreq>タグは、検索エンジンのヒントにすぎません。 さらに、グーグルを含むそれらのいくつかは、それをまったく考慮していません。
<priority>タグ
<priority> 0.6 </ priority>優先度タグは、検索エンジンに、サイト上の他のURLとの関係でページがどれほど重要であるかを直接知らせます。 0.0から1.0の間のスケールで優先順位を割り当てます。
Googleはこのタグを考慮していないことに注意してください。
いいえ、優先度と変更頻度はGoogleではまったく使用されていません。
— johnmu.xml(個人)(@ JohnMu)2019年9月13日
Hreflangタグ
hreflangタグを使用して、ページの言語バージョンを指定できます。
そのためには、各<url>タグの下にタグを含めて、ページ自体を含むすべての言語バージョンのページを表す必要があります。
<xhtml:link rel = "alternate" hreflang="言語コード" href =” url_of_the_language_version”>
これは、英語とドイツ語のバージョンがあるページの例です。
<url> <loc> https://www.example.com/page1/en </ loc> <xhtml:link rel = "alternate" hreflang = "de" href = "https://example.com/page1/de " /> <xhtml:link rel = "alternate" hreflang = "en" href = "https://www.example.com/page1/en " /> </ url>
サイトマップにhreflangタグを追加すると、検索エンジンがユーザーに最も適切な言語バージョンを提示するのに役立ちます。 ただし、推奨される方法は、タグをHTMLコードとサイトマップに追加するか、HTMLコードのみに追加することです。
サイトマップにhreflangsを配置することは機能しますが、検証するのも面倒です。 まず、多くのSEOツールはHTMLのhreflangタグ用に最適化されています。 次に、ページにアクセスしているときにhreflangsを自動的にチェックするブラウザアドオンを忘れることができます。 これは、HTMLのhreflangsでのみ機能します。 マークアップをサイトマップに配置すると、この便利さはすべて失われます。 hreflangタグに加えられた変更を確認するたびに、サイトマップをクロールする必要があります。出典: OnelyのSEOスペシャリスト、Artur Bowsza
サイトマップ拡張機能
サイトマップに構文を追加して、次のようなリッチメディアコンテンツに関する情報を指定できます。
- 画像、
- ビデオ、
- ニュース。
XML画像サイトマップ
画像を既存のサイトマップに追加するか、別のXML画像サイトマップを作成できます。
画像サイトマップは、ウェブサイト上に画像の整理されたインデックスを作成するのに役立ち、検索エンジンボットがより効率的に画像をクロールできるようにします。 次の場合に役立ちます。
- あなたのウェブサイトはトラフィックを促進するために画像に依存しています(例えば、ストックフォトのウェブサイト)、
- そうしないと、画像を見つけるのが難しい場合があります(たとえば、JavaScriptによってフェッチされた画像)。
画像のメタデータを追加し、画像のキャプション、場所、ライセンスなどの追加情報を指定できます。 利用可能な画像タグの詳細については、Googleのドキュメントをご覧ください。
画像サイトマップに含める画像は、Webサイトと同じドメインにある必要はありません。 CDNは、Google検索コンソールで確認されれば問題ありません。
XMLビデオサイトマップ
画像サイトマップと同様に、既存のサイトマップにビデオを追加したり、別のXMLビデオサイトマップを作成したりできます。
検索エンジンボットに動画に関する追加情報を提供して、ボットが動画コンテンツを見つけて理解しやすくすることができます。特に、コンテンツを他の方法で見つけるのが難しい場合はそうです。
たとえば、動画の長さを追加して、家族向けかどうかを指定できます。 利用可能なビデオタグの詳細については、Googleのドキュメントをご覧ください。
Googleニュースサイトマップ
Googleニュースサイトマップには、サイトで公開されている記事のリストが含まれており、Googleが新しい記事をすばやく見つけるのに役立ちます。
Googleニュースサイトマップに最大1,000のURLをリストし、公開されたらすぐにサイトマップの記事を更新できます。
利用可能なニュース固有のタグは、Googleのドキュメントにあります。
サイトマップインデックスファイル
サイトマップは50,000のURLを保持できます。 したがって、より多くのURLを含める場合は、複数のサイトマップを作成する必要があります。
複数のサイトマップがある場合は、サイトマップインデックスファイルを作成して、すべてのサイトマップを一度に送信できます。 次に、2つのサイトマップを含むサイトマップインデックスファイルの例を示します。
<?xml version = "1.0" encoding = "UTF-8"?> <sitemapindex xmlns = " http://www.sitemaps.org/schemas/sitemap/0.9 "> <サイトマップ> <loc> http://www.example.com/sitemap1.xml </ loc> </サイトマップ> <サイトマップ> <loc> http://www.example.com/sitemap2.xml </ loc> </サイトマップ> </ sitemapindex>
サイトマップインデックスタグは、次のタグを使用します。
- バージョンとエンコーディング標準を指定するXMLヘッダータグ、
- sitemapindex –ファイルを囲む親タグ(< urlset>タグと同等)、
- サイトマップ–各サイトマップファイルを含む親タグ( <url>タグと同等)、
- loc –サイトマップのURLを指定するロケーションタグ。
サイトマップを作成する方法は?
サイトマップは手動または自動で作成できます。
サイトマップを手動で作成する
Windows NotePad、TextEdit、またはVisualStudioCodeなどのエディターでサイトマップを手動で作成することを選択できます。
そうすれば、好みに合わせてカスタマイズできますが、ページ数の少ない小さなWebサイトにのみお勧めします。 より大きなウェブサイトと数百ページの場合、このプロセスは非常に時間がかかり、エラーが発生しやすくなります。
サイトマップを自動的に作成する
数百ページの大きなWebサイトでは、サイトマップを自動的に作成することをお勧めします。 以下を使用して生成できます。
- CMSまたはeコマースプラットフォームのネイティブ機能、
- プラグインを追加しました
- サードパーティのツール。
CMSまたはeコマースプラットフォームによって生成されたサイトマップ
WixやShopifyなどの一部のCMSまたはeコマースプラットフォームは、サイトマップを自動的に生成します。
生成されたサイトマップは、Webサイトのルートディレクトリにあります。
プラグインによって生成されたサイトマップ
WordPressなどのCMSを使用している場合は、サイトマップを生成するためのプラグインが必要になる場合があります。 この拡張機能によりプロセスが簡単になり、さらに多くのSEO機能が搭載されるため、YoastSEOの使用をお勧めします。
サードパーティツール
Screaming FrogやXML-Sitemaps.comなど、多くのサードパーティツールでサイトマップを作成できます。 最初にダウンロードする必要がありますが、その後はホームページへのURLを提供するのと同じくらい簡単です。
静的サイトマップと動的サイトマップ
サイトマップは静的または動的に生成できます。
静的サイトマップは、サイトマップが生成されたときに取得されたWebサイトのインデックス可能なコンテンツのスナップショットです。 Screaming Frogなどのクローラーを使用して、静的サイトマップを簡単に作成できます。
欠点は、Webサイトに変更が発生するたびに、静的サイトマップを更新する必要があることです。 したがって、ページを定期的に追加または削除すると、静的XMLサイトマップはすぐに廃止され、その目的を果たせなくなります。
動的サイトマップは、要求されるたびに作成されます。 それはそれが最新の状態に保たれ、あなたのウェブサイトの現在の状態を反映していることを意味します。
動的サイトマップは、コンテンツが頻繁に変更される場合に役立ちます。 例としては、製品の在庫が頻繁に出入りするeコマースWebサイトがあります。
動的なサイトマップを作成するには、開発者の助けが必要な場合や、このオプションを提供するプラグインを使用する場合があります。
サイトマップを検索エンジンに送信する
検索エンジンにpingを送信して、新しいサイトマップがあること、または以前のサイトマップに変更を加えたことを知らせることができます。
Googleは、サイトがクロールされるたびにサイトマップをチェックするわけではありません。 サイトマップは、最初に気付いたときにのみチェックされ、その後は、変更されたことを通知するためにpingを送信したときにのみチェックされます。 サイトマップが新規または更新された場合にのみ、サイトマップについてGoogleに警告します。 変更されていないサイトマップを複数回送信またはpingしないでください。出典: Google
サイトマップをGoogle検索コンソールに送信する
Google検索コンソールアカウントにログインします。 次に、サイドバーの[インデックス]>[サイトマップ]に移動します。

サイトマップのURLをフィールドに入力し、[送信]をクリックします。

Google検索コンソールは、サイトマップ内にエラーがあるかどうかを通知します。

サイトマップをBingWebmasterToolsに送信する
Google Search Consoleで既に確認済みの場合、この手順は簡単です。 Bing Webmaster Toolsに移動し、データをインポートします。

Google検索コンソールでまだ確認していない場合は、サイドバーの[サイトマップ]に移動できます。 次に、ページ上部の[サイトマップの送信]ボタンをクリックします。

YahooとBingが統合されたため、サイトマップをBing Webmaster Toolsに追加すると、サイトマップがYahooに送信されるようになります。
サイトマップをYandex.Webmasterに送信する
Yandexにサイトマップを送信するには、次のことを行う必要があります。
- Yandex Passportに移動し、ログインします。
- 「サイトマップファイル」セクションに移動します。
- XMLサイトマップのアドレスを入力します。
- 「追加」ボタンをクリックします。
サイトマップチェックリスト
- サイトマップに50,000を超えるURLが含まれていないことを確認してください。 それ以上ある場合は、より小さなサイトマップに分割してください。
- インデックス可能なページのみを含める、
- robots.txtファイルのサイトマップを参照してください。
- 一貫性のある完全なURLを使用する–URLからwwwまたはHTTP/HTTPSプロトコルが欠落していないかどうかを確認します。
- 追加のメディアコンテンツ(画像、ビデオ、ニュース)がある場合は、サイトマップ拡張機能を使用します。
- 言語バージョンが異なる場合は、サイトマップでそれらを指定できますが、HTMLでhreflangタグを使用することもできます。
- 検索エンジンが常にそれらを考慮するとは限らないので、 changefreqとpriorityタグにあまり焦点を合わせないでください。
