最新コラム
-
-
-
-
Webディレクション
SEO営業が最初にチェックするポイント
-
Webサイト制作Web開発
超初心者向け!jQueryをRPG風に解説!
-
SEO対策SEO解析
SEOの調査で役立つツール 〜内部チェック編〜

無限スクロールはSEOに効果的とは限らない、という事実をご存知ですか?
確かに、クリックやタップをしなくても次ページへ遷移できるのは大きな強みですが、「後半ページがインデックスされない!」などSEOに悪影響を受けるケースもあるのです。
そこで今回は、無限スクロールとSEOの関係・Googleの推奨構成・JavaScriptの記述例・ページネーションとの違いなどについて解説します。
目次
無限スクロール(Infinite Scroll)とは、ユーザーが画面下部までスクロールした際、クリックやタップといったページ遷移に必要な操作をしなくても、自動的かつ継続的に新しいコンテンツを表示させるUIに特化したウェブデザイン技術の一種です。
TwitterやPinterestなどのSNS、複数の画像が一連表示されるギャラリー的なサイトで導入されている仕様と言った方がイメージしやすいかもしれません。
ロングスクロールとも呼ばれており、WordPressのプラグインとしては「jQueryのinfinite scroll」が有名です。
SNSやアプリなどで先行導入された経緯からも分かる通り、メリットの多くはタブレット端末での操作性に対する優位性・利便性が際立っています。
▼メリット
一見、UIとして優れているように思える無限スクロールですが、下記のようなデメリットからストレスを感じるユーザーも少なくありません。
▼デメリット
ユーザビリティが重視されている以上、必ずしもSEOにとってポジティブに作用するとは限らないのです。
結論から言うと、Googleが推奨する対策を講じずに導入した場合は、SEOにとって逆効果になりかねません。
場合によっては、検索結果に表示されないこともあります。
確かに、無限スクロールはモバイルユーザビリティに優れている分、特に閲覧者からは使い勝手の良い便利機能として高く評価されています。
特に、2021年から全てのWebサイトがMFI(Mobile First Indexing)の対象になって以降、SEO効果を向上させるべく導入を検討されているサイト運営者も多いことでしょう。
しかしながら、ことSEOの観点から言うと無限スクロールは決して万能ではありません。
そこで注目したいのが、Googleが2014年2月に「英語版ウェブマスター向け公式ブログ」を通じて行ったアナウンスです。
詳しくは後述しますが、検索エンジンが処理しやすい構成と導入方法について解説されています。
▼関連コラム
無限スクロールの実装パターンを大きく分類すると下記の2種類に分けられます。
なお、SEOに有利なのはGoogleが推奨している2番の方法ですので、実装する際は2番の方法で行いましょう。
▼パターンの違い
結論から言うと、こちらのパターンはSEO上おすすめできません。
シンプルかつ簡単に実装できるというメリットがあるものの、Googleの推奨構成からも外れています。
なぜGoogleは同一URLのコンテンツを読み込ませる方法をSEO上NGとしているのか、その根拠となっているのが下記のプロセスです。
▼Googleから推奨されていない理由
本来、コンテンツには固有のURLが存在しており、それぞれが検索エンジンに認識されなければインデックスさえされません。
にもかかわらず、同一URLとしてページ内に読み込まれてしまうと、1ページ目のコンテンツしか存在していないと誤認されてしまうのです。
Googleが公式サイトで明言している通り、SEO的に有利に働くのはこちらのパターンです。

出典:Google検索セントラル 検索エンジンとの相性を考慮した無限スクロールのベストプラクティス
下記の画像が表している通り、全コンテンツを1つのURLにまとめる(画像左)よりも、複数のページに分割した(画像右)方が検索エンジンに認識されやすくなります。
また、検索エンジンに一連ページであると伝わるように、headセクションに「rel=”prev/next”」を記述しておきましょう。
無限スクロールと似ている手法として、ページネーションが挙げられます。
ただし、何かと混同されがちなページネーションですが、両者の特徴を比較してみると違いは明らかです。
▼無限スクロールとページネーションの違い
▼関連コラム
結論から言うと、Googleのベストプラクティスに則っていれば無限スクロールとページネーションにSEOの優位性はありません。
肝心なのは、自サイトの方向性にどちらが適しているかどうかなのです。
▼使い分けのヒント
Google画像検索でも活用されている通り、テキストの比重が少なくサクサク目で追える下記のようなサイトは、SEOの側面から言っても無限スクロールを選択すべきでしょう。
▼無限スクロールが向いているサイト
最後に、JavaScriptライブラリやjQueryを使わずに、JavaScriptだけで無限スクロールを実装する方法を解説します。
例題としてご紹介するのは、20枚の画像をスライドショーのように表示させる手法です。
<div class="scroll" data-max="20" data-lastnum="2"> <img src="1.jpg" /> <img src="2.jpg" /> </div>
カスタムデータ属性に下記の2点を追加しておくことで、次にロードすべき画像番号が指定できる仕組みになっています。
▼カスタムデータ属性の追加項目
<style>
.scroll {
overflow:auto;
width:400px;
height:300px;
}
.scroll img {
height:180px;
display:block;
margin:1px;
}
</style>
scrollクラスでは、スクロールバーが適切に表示されるよう下記2点を指定します。
▼scrollクラスでの指定
一方、imgタグでは画像の縦並び表示を予防します。
▼imgタグでの指定
<script>
document.querySelectorAll('.scroll').forEach(elm => {
elm.onscroll = function () {
if (this.scrollTop + this.clientHeight >= this.scrollHeight) {
//スクロールが末尾に達した
if (parseInt(this.dataset.lastnum) < parseInt(this.dataset.max)) {
//未ロードの画像がある場合
this.dataset.lastnum = parseInt(this.dataset.lastnum) + 1;
let img = document.createElement('img');
img.src = this.dataset.lastnum +'.jpg';
this.appendChild(img);
}
}
};
});
</script>
JavaScriptの記述ポイントは、下記の2点です。
▼ポイント
SNSやアプリの普及に伴い、多くのWebサイトが無限スクロールを導入しています。
しかし、大前提としてGoogleが提供しているベストプラクティスを順守していなければ、インデックスさえされず検索結果から除外され兼ねません。
SEOにおける不利益を回避しつつモバイルフレンドリーなサイト構築を目指すなら、推奨構成を参考にするのが無難です。
SEOの観点から導入を検討している方は、まず自サイトの方向性に適しているのか見極めるところから始めてみましょう。