EC事業者・担当者が「今日・明日で改善できるSEO施策」をまとめた超実務寄りのEC SEO専門メディア

操作しないと商品が出ない実装の、直し方を解説します。ECサイト向け解説記事のアイキャッチ

無限スクロールと「もっと見る」のSEO|商品をクロール可能にする実装

操作しないと商品が出ない実装の、直し方を解説します。記事の結論と3つの要点をまとめた図
目次
  1. 三つの表示方式の違い
  2. 検索エンジンは利用者の操作を前提にしない
  3. ページ単位のURLを用意する
  4. 履歴と共有に対応する
  5. 読み込み失敗への備え
  6. フッターと重要リンクを隠さない
  7. 表示速度とのバランス
  8. ECサイトでの具体例
  9. アクセシビリティへの配慮
  10. フィルタ変更時の状態管理
  11. 計測イベントを設計する
  12. サーバー側レンダリングとの関係
  13. テスト方法
  14. よくある間違い
  15. 確認項目
  16. 公開前の端末別テスト
  17. 商品一覧以外の要素をどう見せるか
  18. まとめ
  19. 次に読みたい関連記事

無限スクロールや「もっと見る」は、ページを切り替えずに商品を追加表示できる仕組みです。スマートフォンでも使いやすい一方、利用者のスクロールやボタン操作に頼った実装では、検索エンジンが後半の商品を見つけられない場合があります。

SEOでは、画面上の操作方法とは別に、追加される商品群へ固有URLとクロール可能なリンク経路を用意します。JavaScriptをやめる必要はありません。利用者には連続表示を提供しながら、検索エンジンとURL共有にはページ単位の構造を残します。

三つの表示方式の違い

ページネーションは、ページ番号や前後リンクで別URLへ移動します。「もっと見る」は、ボタンを押すと同じ画面へ商品を追加します。無限スクロールは、画面下部へ近づくと自動で商品を読み込みます。

どの方式にも長所と短所があります。ページネーションは現在位置が分かりやすく、無限スクロールは連続して閲覧できます。「もっと見る」は利用者が追加タイミングを選べます。商品数、比較行動、フッターへの到達、表示速度を踏まえて選びます。

検索エンジンは利用者の操作を前提にしない

Googleは一般に、href属性を持つa要素のURLをクロールします。ボタンを押す、最後までスクロールするなどの利用者操作を必ず実行して、全商品を読み込むわけではありません。

初期HTMLに最初の20商品しかなく、残り180商品が操作後にだけAPIから返る場合、後半の商品へのリンクが発見されない可能性があります。XMLサイトマップや商品フィードも役立ちますが、カテゴリからのリンク経路も整えます。

ページ単位のURLを用意する

追加商品のまとまりに「?page=2」「?page=3」などのURLを持たせます。各URLを直接開いたときに、そのページの商品が表示される必要があります。URLの#以降だけでページを区別しないようにします。

画面上は商品を連結して見せても、HTML上では次ページへのa要素リンクを用意できます。利用者に見せるUIと、検索エンジンがたどるページ構造を両立させます。

履歴と共有に対応する

無限スクロールで100商品目まで進んだ後、商品詳細から戻ると先頭へ戻ってしまうと使いにくくなります。スクロール位置と対応するURLをHistory APIで更新し、戻る操作で同じ位置を再現できるようにします。

URLを共有した相手が同じ商品範囲を開けることも確認します。ただし、JavaScriptでcanonicalを別の値へ頻繁に切り替えるのではなく、各ページURLの正規設定を安定させます。

読み込み失敗への備え

通信が遅い、JavaScriptが失敗する、APIがエラーになると、追加商品が表示されません。読み込み中、失敗、再試行の状態を明確にし、通常リンクで次ページへ進める代替手段を用意します。

画像の遅延読み込みでも、画面内へ入るまで画像URLを出さない実装は確認が必要です。商品名と商品リンクは取得でき、主要画像には適切なsrcや検索エンジンが認識できる実装を使います。

フッターと重要リンクを隠さない

無限に商品が追加されると、利用者がフッターへ到達できません。会社情報、配送、返品、利用規約など重要なリンクがフッターにしかない場合、操作性に影響します。

一定件数で「もっと見る」へ切り替える、固定のナビゲーションを用意するなど、商品閲覧以外の経路も残します。SEOだけでなく、アクセシビリティと購入前の安心にも関わります。

表示速度とのバランス

一度にすべての商品をDOMへ追加すると、通信量だけでなくブラウザの処理も重くなります。初期表示件数、追加件数、画像サイズ、API応答、キャッシュを測定して調整します。

「もっと見る」を押すたびに大量の商品を読み込むのではなく、利用者が比較できるまとまりで追加します。表示速度の改善が必ず順位向上につながると断定はできませんが、使いにくい一覧は商品選びや購入にも影響します。

ECサイトでの具体例

コスメサイトの「リップ」カテゴリに300商品あるとします。初期表示は30商品とし、下部の「もっと見る」で次の30商品を追加します。裏側では「?page=2」以降のURLを用意し、各ページから前後へ通常リンクで移動できます。

60商品目まで表示した時点でURLと履歴を更新し、商品詳細から戻っても同じ位置へ復帰できるようにします。JavaScriptが使えない場合でも、ページネーションリンクから商品を閲覧できます。

色やブランドのフィルタを組み合わせた場合は、フィルタURLの検索対象方針を別に決めます。無限スクロールを実装したことで、不要なパラメータURLまで大量にリンクされないようにします。

アクセシビリティへの配慮

無限スクロールでは、追加された商品を読み上げ利用者へ知らせ、フォーカス位置を不意に移動させないことが重要です。「もっと見る」ボタンには、何件追加されるかを示すと理解しやすくなります。

キーボード操作だけで商品とフッターへ到達できるか、読み込み中に操作が閉じ込められないかを確認します。クロール可能なリンクを用意することは、利用者の代替操作にも役立ちます。

フィルタ変更時の状態管理

後半までスクロールした後に色やブランドを変更すると、商品集合とページ番号が変わります。以前の位置を引き継いで空画面にならないよう、先頭へ戻す、URLと履歴を更新するなどの仕様を決めます。

フィルタ解除後に古いpageパラメータが残ると、存在しないページへ移動する場合があります。商品集合が変わる操作ごとに、URL、canonical、読み込み位置をテストします。

計測イベントを設計する

通常のページビューだけでは、「もっと見る」が何回使われ、何件目の商品まで見られたか分かりません。追加読み込み回数、成功と失敗、商品詳細への移動、戻る操作をイベントとして計測します。

閲覧深度が高いほど良いとは限りません。希望の商品を見つけられず延々とスクロールしている可能性もあります。絞り込み利用や購入と合わせて評価します。

サーバー側レンダリングとの関係

各ページURLをサーバー側または事前生成HTMLで返せると、商品リンクを安定して提供しやすくなります。クライアント側レンダリングでも実現できますが、APIエラーやレンダリング遅延を含めて検証が必要です。

技術方式の名前だけで可否を決めず、URLを直接開いた結果、HTML内の商品リンク、HTTP応答、表示速度を確認します。検索エンジン向けだけ別内容を返さず、利用者と同じ商品集合を提供します。

テスト方法

ブラウザでJavaScriptを無効にした状態や、ネットワークを遅くした状態で商品リンクへ到達できるか確認します。ページ2のURLを直接開き、想定の商品、title、canonical、前後リンクが表示されるかを見ます。

Search ConsoleのURL検査でレンダリング後のHTMLを確認し、後半商品のリンクが取得されているかを調べます。ログやアクセス解析では、追加読み込みの失敗率、戻る操作、閲覧深度も確認できます。

よくある間違い

一つ目は、button要素のクリックだけが唯一の追加経路になっていることです。通常リンクと固有URLを用意します。

二つ目は、全商品を一つのURLへ読み込み、ページ番号URLを作らないことです。共有、履歴、クロール、エラー復旧が難しくなります。

三つ目は、検索エンジン向けにだけ別の隠しリンクを大量に置くことです。利用者にも意味のあるページ構造として実装し、画面と内容を一致させます。

確認項目

  • 追加商品群に直接開けるURLがあるか
  • 次ページへhref付きリンクで到達できるか
  • ボタンやスクロール操作なしでも商品を発見できるか
  • 戻る操作とURL共有で同じ位置を再現できるか
  • 読み込み失敗時の代替経路があるか
  • フッターや重要リンクへ到達できるか
  • ページURLごとのcanonicalが正しいか

公開前の端末別テスト

無限スクロールは、画面サイズ、通信速度、ブラウザによって挙動が変わりやすい機能です。パソコンとスマートフォンで、初回表示、追加読み込み、戻る操作、フィルタ変更、通信失敗を確認します。キーボード操作や画面読み上げでも「もっと見る」に到達できるかを見ます。

検索エンジン向けの確認では、2ページ目相当のURLを新しい画面で直接開き、その商品群が最初から表示されるかを確認します。画面をスクロールした後にだけ作られるリンクでは不十分です。HTMLやレンダリング結果に通常のa要素で前後ページへの経路があり、リンク先が200で応答する状態を目指します。

計測では、追加読み込み回数だけでなく、何番目の商品まで見られたか、商品詳細へ移動した位置、読み込みエラーを記録します。回遊が少ない場合は、表示方式だけを原因と決めつけず、商品順、絞り込み、価格情報、読み込み時間も併せて調べます。

商品一覧以外の要素をどう見せるか

一覧の末尾にガイド、関連カテゴリ、フッターがある場合、無限に商品が追加されると利用者がそこへ到達できません。重要な案内は一覧上部や固定の補助領域にも置く、一定回数で自動読み込みを止めてボタンへ切り替えるなど、商品探索とサイト内移動を両立させます。広告やおすすめ枠を途中に差し込む場合も、商品番号や戻り位置がずれないようにテストします。

まとめ

無限スクロールや「もっと見る」を使う場合も、商品群をページ単位の固有URLへ分け、通常リンクでつなぐことが基本です。利用者の操作を待たなくても、検索エンジンが後半の商品へ到達できるようにします。

まず2ページ目相当のURLを直接開き、商品リンク、前後リンク、canonical、戻る操作を確認してください。画面の滑らかさだけでなく、URLとして成立しているかをテストすることが重要です。

次に読みたい関連記事