今回はサイトマップとはなにかについて解説していきます。
▼目次
・
サイトマップとは?
1.HTMLサイトマップとは?
2.XMLサイトマップとは?
・
導入するべきケースは?
・
似た機能との違いとは?
・
作り方・登録方法
・
まとめ
サイトマップとは?
サイトマップはウェブ業界では2つの物を指します。
一つはHTMLサイトマップ、もう一つはXMLサイトマップです。HTMLサイトマップはユーザーに対して提供される物、XMLサイトマップは検索エンジンに対して提供される物という違いがあります。
※すべての検索エンジンについて言えることですが、この記事ではGoogleを中心としてお話しします。
1.HTMLサイトマップとは?
HTMLサイトマップはユーザーに対してウェブサイト内にどんなコンテンツがあるかを示したページです。
参考:慶應義塾大学ホームページ
2010年頃はSEOにプラスの要素として働いていましたが、2015年にGoogle社員のジョン・ミューラー氏がSEOの評価要素としては必要が無いという旨の発言を行っています。
そのため現在はユーザーの回遊性を高める、目的のページを見つけやすくすることを目的に作成することになります。
上記の慶應義塾大学のサイトのように、サイト内にどんなコンテンツがあるか想像しにくいようなサイトはHTMLサイトマップを用意することが大切になります。
一方ECサイトでは下記の3点からHTMLサイトマップを用意する必要性は薄いです。
・サイトのカテゴリ構造をしっかり設計していればユーザーは商品を探し出せること
・サイトマップを経由して探すよりもサイト内検索を使って調べるほうがユーザーにとってはお手軽であること
・商品特集ページ等の入れ替わりが短期間で発生しやすいためHTMLサイトマップの更新がサイト運営者にとって負担になりやすいこと
HTMLサイトマップを実装するときは、運用の手間とUXの向上を天秤にかけて本当にサイトにとって必要な要素かを考える必要があります。
2.XMLサイトマップとは?
XMLサイトマップはGoogleに対してサイトが持っているページを伝えるための機能です。
Googleはクローラーというbotを使って日々世界中のウェブサイトの情報を収集しています。そのクローラーに対して、自社のサイトに含まれるページはどれか、どのページが重要かを伝えるために必要なのがXMLサイトマップになります。
XMLサイトマップはHTMLサイトマップ同様に、それがあることでSEOの評価が向上することはありません。ただしXMLサイトマップがあると、サイト内に新しいページを用意した時などにいち早くGoogleに気が付いてもらえるようになります。検索結果画面に表示されるにはGoogleに早く気づいてもらうことが重要となるため、ページ数の多い大規模サイトを運営している場合には非常に重要な機能になります。
XMLサイトマップは通常、サイトの保有するページについて記述しますが、以下の3種類の拡張機能を使うことでより詳細な情報をGoogleに伝えることができます。
・サイトで使われている画像のテーマやタイプ、ライセンスなどを伝える画像サイトマップ
・サイトで使われている動画の再生時間や カテゴリ、年齢制限のレーティング等を伝える動画サイトマップ
・ニュースサイトマップ(通常のサイトでは使うことはほぼ無いです)
XMLサイトマップを入れることで、重要なページを重点的にクローラーに訪問させることができるようになります。
例えば短いスパンで内容を更新するような記事ページがある場合、XMLサイトマップでクロール優先度の高いページと指定してあげることで、ページの更新を行ってもすぐにクローラーが気づいてページの評価を更新してもらえるようになります。またページの更新日時を併せて伝えることも可能で、より早くGoogleにページの変化を伝えることができます。
また、XMLサイトマップ内に含めたURLは正規URLとして認識されやすくなるという効果もあります。例えば商品一覧ページで並び順ごとにパラメータが付与され別ページが生成される場合、Googleはどの並び順だとしても取り扱っている商品は同じであることから重複ページとしてみなします。この時サイトマップで特定の並び順のページを記載しておくことでそのページが正規ページとして検索結果画面に表示されやすくなります。
導入するべきケースは?
XMLサイトマップは下記に当てはまる場合に入れる必要があるとGoogleが言及しています。
・巨大なサイトの場合
・サイト内部での導線が担保できていないページが多くある場合。
・できたばかりのサイトで外部からのリンクをほとんど受けていない場合
・サイトに動画や画像などのコンテンツが多数含まれている、もしくはサイトがGoogleニュースに表示されている場合
逆に次に当てはまるようなサイトはXMLサイトマップを入れる必要がないと言及しています。
・サイトのサイズが小さい場合(総ページ数が500以下のサイト)
・自動的にサイトマップが生成されるサイトホスティングサービスを利用している場合
・サイト内ですべてのページを閲覧することができるサイトの場合
・検索結果画面で表示をさせたい画像や動画、ニュースページが多くない場合
参考:Google公式ページ
クローラーがサイトを回りきることができないほどページ・コンテンツを抱えている、もしくはクローラーが訪れるための導線が用意されていない場合には、サイトマップで必要なページへの導線を用意することでクローラーが辿り着けるようになります。
ただし、XMLサイトマップは、クローラーの巡回をサイトマップ内に含まれたページに偏らせてしまうという問題点があります。例えば新しくページを追加しサイトマップに追加しなかった場合、サイトマップがマイナスに作用して新しいページへのクロールが遅れてしまう可能性があります。
そのためサイトの規模、サイトマップの運用の重さを考えたうえでサイトマップを導入するべきか考える必要があります。
似た機能との違いとは?
Googleにページを伝える機能としては他にrobots.txtがあります。
robots.txtはGoogleにクロールされたくないページを指定する事が可能な機能です。
XMLサイトマップはあくまでクロールの優先度を伝える機能であるため、クロール自体をブロックすることはできませんがrobots.txtはクロール自体をさせないことが可能です。
例えば検索ユーザーには見せたくない管理者用のページなどを持っている場合などはrobots.txtを使用する必要性があります。
ただし、注意点としてrobots.txtはあくまでクロールを防ぐためのものなので、外部サイトなどからクロールが可能な場合はそちらからクロールされインデックスされてしまう可能性があります。そのため絶対に検索結果画面に表示させたくないページの場合は併せてnoindex処理を行う必要があります。
作り方・登録方法
基本的にはXML形式でファイルを作成し、サーチコンソールのサイトマップ機能から追加することで設定が可能です。もし、サーチコンソール連携を行っていない場合はTOPページのすぐ下にrobotx.txtファイルページを作成し、その中にXMLサイトマップへのパスを記載することで設定が可能です。
参考:Google公式ページ
まとめ
サイトマップはHTMLとXMLの2種類があります。
HTMLサイトマップはユーザーのため、XMLはGoogleのためにサイト構造をわかりやすく伝えるための機能です。
HTMLサイトマップはユーザーが構造を理解しにくいサイトの場合には用意することが望ましいです。
XMLサイトマップは500ページ以上あるような大規模なサイトの場合で、Googleにいち早くページの更新や新規ページ追加を認識してもらいたい場合に設定する事をお勧めします。
似た機能との違いとは?
Googleにページを伝える機能としては他にrobots.txtがあります。
robots.txtはGoogleにクロールされたくないページを指定する事が可能な機能です。
XMLサイトマップはあくまでクロールの優先度を伝える機能であるため、クロール自体をブロックすることはできませんがrobots.txtはクロール自体をさせないことが可能です。
例えば検索ユーザーには見せたくない管理者用のページなどを持っている場合などはrobots.txtを使用する必要性があります。
ただし、注意点としてrobots.txtはあくまでクロールを防ぐためのものなので、外部サイトなどからクロールが可能な場合はそちらからクロールされインデックスされてしまう可能性があります。そのため絶対に検索結果画面に表示させたくないページの場合は併せてnoindex処理を行う必要があります。
作り方・登録方法
基本的にはXML形式でファイルを作成し、サーチコンソールのサイトマップ機能から追加することで設定が可能です。もし、サーチコンソール連携を行っていない場合はTOPページのすぐ下にrobotx.txtファイルページを作成し、その中にXMLサイトマップへのパスを記載することで設定が可能です。
参考:Google公式ページ
まとめ
サイトマップはHTMLとXMLの2種類があります。
HTMLサイトマップはユーザーのため、XMLはGoogleのためにサイト構造をわかりやすく伝えるための機能です。
HTMLサイトマップはユーザーが構造を理解しにくいサイトの場合には用意することが望ましいです。
XMLサイトマップは500ページ以上あるような大規模なサイトの場合で、Googleにいち早くページの更新や新規ページ追加を認識してもらいたい場合に設定する事をお勧めします。