サイトマップの作り方と定期的な更新でクローラー対策
サイトマップ(xml)は検索エンジンのクローラーにサイトを巡回するページをわかりやすく手助けするためにサーバーに設定します。そのため新しくページを公開した場合には、絶対ではありませんが定期的な更新によって重要なページへのクロールを促進することが大切です。
サイトマップには、「HTMLサイトマップ」と「XMLサイトマップ」があります。「HTMLサイトマップ」は、webサイト内に設置され訪問ユーザー(人間)にサイトの構造をわかりやすく伝える用途となり、「XMLサイトマップ」は検索エンジンにサイトの構造を伝えクロールを促進する用途です。両者、混同しやすいのですが本記事で取り上げるサイトマップは「XMLサイトマップ」となります。
そもそもSEOの外部対策といえば、まず被リンクが挙げられますが、被リンク対策をする目的のひとつに、「クローラーがサイトを巡ってくる数を増やすため」ということが考えられると思います。
そして、そのクローラーの頻度を上げるための施策として、サイトマップの送信も重要となってきます。では今回は、そのSEO対策のためのサイトマップの作り方についてまとめたいと思います。
目次
クローラーが頻繁に巡回するようになるとどうなるのか?
被リンクや、サイトマップによってクローラーが頻繁に無駄なく巡回するようになると、1度では把握できなかったコンテンツの内容も、正しくインデックスしてもらいやすくなり、正しく評価されることによって検索順位を上位表示させることが期待できます。
サイトマップは全てのページを記載したxmlファイル
このサイトマップは更新の度に手動で追加・削除していては大変ですので、自動で作成してくれるサイトや、wordpressのプラグインで、常に最新のサイトマップに更新してくれるものもありますので、参考にしてみてください。
※このxmlファイルに書いていないページはインデックスされない、という訳ではありません。
実際のサイトマップファイルの記述例を以下にご紹介します。
<?xml version=”1.0″ encoding=”UTF-8″?> <urlset xmlns=”http://www.sitemaps.org/schemas/sitemap/0.9″> <url> <loc>https://seopack.jp/</loc> <lastmod>2022-06-01</lastmod> <changefreq>daily</changefreq> <priority>0.8</priority> </url> </urlset>
はじめにサイトマップファイルは「UTF-8」でエンコードされている必要があります。「UTF-8」は、Unicode文字のエンコード方法の1つとなりますが、この形式でエンコードされたサイトマップは、URLが適切に変更されます。
上記の1行目で「UTF-8」にエンコードしている事を宣言しています。
また、このxmlファイルには、<url>~</url>で囲まれたものを1ページとして、インデックスしてほしいページを追加していきます。サイトマップに記述できるURL上限は50,000件、またファイルサイズは50MBとなるので、それ以上のURLの場合は、サイトマップを分割して作成する必要が出てきます。また、URLの指定は https:// などを省略せず「絶対パス」で指定する事が必要です。
自動で作成した場合などは、抜けがないか、一通り確認してみましょう。
<loc>で囲まれたurlは必須ですが、その他は省略しても構いません。
\無料診断の活用で課題を明確に/
外部リンク、内部状況、コンテンツ状況からSEO対策の課題が見えてくる無料調査です。
「対策ページの弱点は何か...」などお悩みをお持ちの方は、一度「SEOパーソナル診断」をご利用ください。
複数のサイトマップを作成する場合
複数のサイトマップを作成する場合、サイトマップインデックスファイルにそれぞれのサイトマップへのリンクをリストしましょう。
サイトマップインデックスファイルとは、各サイトマップファイルへのリンクがリストされているファイルです。検索エンジンは、サイトマップインデックスファイルから、その中にリストされている各サイトマップをクロールします。
実際のサイトマップインデックスファイルの記述例を以下にご紹介します。
<?xml version=”1.0″ encoding=”UTF-8″?> <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> <sitemap> <loc>http://www.example.com/sitemap1.xml</loc> <lastmod>2022-06-01</lastmod> </sitemap> <sitemap> <loc>http://www.example.com/sitemap2.xml</loc> <lastmod>2022-06-02</lastmod> </sitemap> </sitemapindex>
この例では、2つのサイトマップファイル(sitemap1.xmlとsitemap2.xml)へのリンクが含まれています。各sitemapタグは、個々のサイトマップファイルを表し、locタグはそのサイトマップファイルのURLを、lastmodタグはそのサイトマップファイルが最後に更新された日付を示しています。
また、サイトマップインデックスファイルに含める事ができるサイトマップのリンクは、同じドメイン内のサイトマップのみとなります。サイトマップ同様にサイトマップインデックスファイルは、UTF-8にエンコードされたファイルとなります。
各XMLタグの内容はこちら
<urlset>記述必須
全体を囲むタグで、XML サイトマップの現在の標準プロトコル。
<url>記述必須
1つのURL情報をurlタグで囲む。
<loc>記述必須
ページのURLを記述。検索エンジンにURLがある事を知らせるタグ。
<lastmod>
最終更新日。Googleのクローラーの更新日よりも新しいものが優先される。過去記事を再度インデックスしてもらいたい時や、重要なページに追記する際に記述。
<changefreq>
更新頻度を記述。有効な値は「always」「hourly」「daily」「weekly」「monthly」「yearly」「never」。
- always(アクセスする度)
- hourly(1時間毎)
- daily(毎日)
- weekly(1週間毎)
- monthly(1ヶ月毎)
- yearly(1年毎)
- never(アーカイブページなどに指定)
<priority>
URL の優先度で0.0 から 1.0 までの値を指定可能。デフォルトの優先度は「0.5」となります。階層によって0.9、0.8のように優先度を指定します。
<sitemapindex>記述必須
サイトマップインデックスファイルに必須のタグです。ファイル内のすべてのサイトマップに関する情報全体を囲むタグ。
<sitemap>記述必須
サイトマップインデックスファイルに必須のタグです。1つのサイトマップの情報を囲むタグ。
\無料診断の活用で課題を明確に/
外部リンク、内部状況、コンテンツ状況からSEO対策の課題が見えてくる無料調査です。
「対策ページの弱点は何か...」などお悩みをお持ちの方は、一度「SEOパーソナル診断」をご利用ください。
アップした後、必要であればGoogleのサーチコンソールで再送信
サイトマップ作成、または更新後、Googleのサーチコンソールで送信します。サーチコンソールにログイン後、画面の左メニューから「インデックス作成」項目の「サイトマップ」を選択し、ページ上部にある「新しいサイトマップの追加」にサイトマップのURLを入力し、送信ボタンをクリックする事でサイトマップの送信は完了です。
自然とクローラーは巡回して、サイトマップで更新したページをクロールしてくれますが、急いで更新ページをインデックスしてほしい時は、サイトマップをサーバーにアップした後、ウェブマスターツールから再送信を通知することができます。
サイトマップを送信した後にサイトマップレポート画面下の「送信されたサイトマップ」上の「ステータス」を確認しましょう。「成功しました」と表示されている場合は、正常にサイトマップの送信が完了していますが、「取得できませんでした」「サイトマップに〇件のエラーがあります」と表示されている場合は、エラーが発生している事を意味します。エラーの原因として考えられるのは次の3点です。
- サイトマップ自体が存在しない
- 送信したサイトマップのURLに誤りがある
- クローラーがサイトマップにアクセスできない
サイトマップが正しくサーバーにアップされているかを確認し、ファイルを設置したURLを確認しましょう。正しいURLをサーチコンソールのサイトマップ送信画面に入力し送信する事でエラーは解消されます。また、サイトマップ自体にクローラーがアクセスできない場合もエラーとなる原因のひとつです。クローラーのアクセスをブロックしていないか確認・修正し、再度サイトマップを送信してみましょう。それでも問題が解決できない場合には、サーチコンソールの「URL検査」を利用しサイトマップのURLを入力する事で状況を確認してみる事をお勧めいたします。
サイトマップをrobots.txtにも記載
サイトマップを検索エンジンに知らせる方法としてサーチコンソールでサイトマップURLを送信する方法を上述しましたが、もうひとつ「robots.txt」にも記載する事をお勧めいたします。「robots.txt」に記載するのは、新規で作成した初回のみで良いのですが、「robots.txt」に記載するメリットとしては、Google以外の検索エンジンにもサイトマップの存在を知らせる事が出来る点です。「robots.txt」には次のように記述します。
Sitemap: https://seopack.jp/sitemap.xml
User-Agent:* Disallow: Sitemap:https://seopack.jp/sitemap.xml
Sitemap:サイトマップのURLといった記述でURLは省略せずに絶対パスで記述します。
XMLサイトマップの置き場所変更で、SEOに悪影響はある?
サイトマップはどの階層にも設置する事が可能ですが、一般的にはサイトのルートに設置する事が推奨されます。しかしサイト運営の中で、XMLサイトマップファイルの名前や置き場所(URL)を変更したいケースがあります。
こうしたとき、ファイル名やURLが変更されると、Googleへの何らかの影響や、SEO対策への悪影響はあるのでしょうか?この疑問にGoogleが公式回答を寄せています。
\無料診断の活用で課題を明確に/
外部リンク、内部状況、コンテンツ状況からSEO対策の課題が見えてくる無料調査です。
「対策ページの弱点は何か...」などお悩みをお持ちの方は、一度「SEOパーソナル診断」をご利用ください。
Google:どういった面でも「悪影響なし」
Google対策の面では、何も影響がないと答えました。
以下が回答全文です。
サイトマップファイルのURL(=ファイルの置き場所や名前)を変更しても、トータルで言うと、Googleには何の影響も及ぼしません。Googleは、新しいサイトマップファイルを見つけたら解析を始め、ファイル内に記述されたページURLを使うようになります。ただただそれだけのことです。事前にサイトマップURLの履歴を残すとか、そういった作業も別に要りません。
そういうわけで、クローリング、インデクシング、ランキングのいずれに関しても、影響は全くありません。
サイトマップの使用タイミングには注意を
クロールやインデクシングを促進するXMLサイトマップをうまく利用することで、SEO対策の効果をより効率よく出せるようになります。新コンテンツ作成時や、内部SEO改善の際などは、XMLサイトファイルの用意やGoogleへの送信を検討する価値があります。
ただし、SEOが未対策のサイトでは、XMLサイトファイルだけではほとんどSEO効果がありません。未対策の場合は、まず順位付けに直接影響する基礎SEO対策を済ませてからXMLサイトファイルの活用に進んでください。
動画や画像もサイトマップに追加できる
サイトマップに記述するのはページのURLだけではなく、動画や画像のURLも追加できます。動画は既存のサイトマップに含めても良いのですが動画専用・画像専用のサイトマップとして作成しても問題ありません。クローラーがアクセス可能な動画・画像を追加する事ができます。
実際の動画サイトマップの記述例を以下にご紹介します。
<?xml version=”1.0″ encoding=”UTF-8″?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"> <url> <loc>http://example.com/videos/some_video.html</loc> <video:video> <video:thumbnail_loc>http://example.com/thumbs/123.jpg</video:thumbnail_loc> <video:title>Grilling steaks for summer</video:title> <video:description>Alkis shows you how to get perfectly done steaks every time</video:description> <video:content_loc>http://streamserver.example.com/video123.mp4</video:content_loc> <video:player_loc allow_embed="yes" autoplay="ap=1">http://example.com/videoplayer.swf?video=123</video:player_loc> <video:duration>600</video:duration> <video:expiration_date>2024-12-01T18:20:15+00:00</video:expiration_date> <video:rating>4.2</video:rating> <video:view_count>12345</video:view_count> <video:publication_date>2024-07-16T19:20:30+08:00</video:publication_date> <video:family_friendly>yes</video:family_friendly> <video:tag>grilling</video:tag> <video:tag>steak</video:tag> <video:category>BBQ</video:category> </video:video> </url> </urlset>
この例では、urlタグで個々の動画を表し、locタグは動画のURLを示しています。「video:video」タグの中には動画の詳細情報(タイトルや動画の説明、コンテンツの場所、動画の長さ、視聴回数など)が含まれます。なお、「loc」タグ、「video:video」タグ、「video:thumbnail_loc」タグ、「video:title」タグ、「video:description」タグは動画サイトマップにおいて記述必須のタグとなります。
関連記事:Google画像検索表示を最適化!画像SEOの進め方
まとめ
サイトマップはxmlで…常に更新しないと…など難しく考えがちですが、ファイルの作り方と更新するタイミングなど要点を押さえておけばそれほど管理は難しいものではありません。
重要なページを急いで検索結果に反映させたい時など、必要な時に更新するような使い方で問題ないかと思われます。
WordPressなどCMSで作成されたサイトのサイトマップ管理は、プラグインを利用すると便利です。手動で最新の状態に更新する手間が省けます。
サイトマップを作り、送信する理由はクローラー対策です。そのクローラーは被リンクからも巡回してきます。そして、SEO Packは日頃からのクローラー・外部対策としてお使いいただけます。
ぜひ、外部対策をご検討の方へ、上位表示にSEO Packをお役立てください。