---
title: "ページ付けの利用"
slug: "using-pagination"
abstract: "Searchおよび推薦リクエストにページを割り当てる方法を学びましょうSitecore Search"
---
# ページ付けの利用

limitとoffsetパラメータを使ってクエリのページ分けを行えます。limitで回答に欲しい最大結果数を指定し、offsetでスキップしたい結果数を指定します。

limitおよびoffsetパラメータのデータモデルについては、[Searchおよび推奨API参照](https://doc.sitecore.com/search/en/developers/search-and-recommentation-api/index.html)を参照してください。

## 複数のページで検索結果を得ること。

複数のページを持つ検索結果を得るには、limitパラメータを1ページあたり表示したい結果数に設定し、offsetパラメータを前のページで表示した結果をスキップしたい結果の数に設定します。

例えば、検索結果の2ページ目を表示したい場合、各ページに5つのアイテムがあります。

以下のコードサンプルは、リクエストの作成方法を示しています:

{
 "widget": {
 "items": 
 {
 "rfk\_id": "rfkid\_7",
 "entity": "content",
 "search": {
 "content": {},
 "limit": 5,
 "offset": 5
 },
 "sources": 
 "407033",
 "408162",
 "406277",
 "406278"
 
 }
 
 },
 "context": {
 "locale": {
 "country": "us",
 "language": "en"
 }
 }
}

## 無限スクロールで検索結果を得る方法

無限スクロールの検索結果の場合、まず訪問者が検索結果ページに到達した際にリクエストを送信し、一定数の結果を超えたごとに修正されたリクエストを送信します。

例えば、無限スクロールの検索結果ページを作ろうとします。訪問者が50件の結果を超えた後、さらに10件の結果を表示させたいです。ここからは、訪問者が10件目に1回の結果を通過した後、さらに10件の結果を表示させたいです。

以下はあなたが最初にかけた電話です:

{
 "widget": {
 "items": 
 {
 "rfk\_id": "rfkid\_7",
 "entity": "content",
 "search": {
 "content": {},
 "limit": 50,
 "offset": 0
 },
 "sources": 
 "407033",
 "408162"
 
 }
 
 },
 "context": {
 "locale": {
 "country": "us",
 "language": "en"
 },
 "user": {
 "uuid": "159871551-io-0i-4e-1p-s6ill6vhenvysbu27bbk-1664389956369"
 }
 }
}

訪問者が50番目の結果をスクロールした後、searchオブジェクトを次のように変更します。

{
 "search": {
 "content": {},
 "limit": 10,
 "offset": 50
 }
}

訪問者が前回のリクエスト送信後に現れた10の新しい結果をスクロールした後、searchオブジェクトを以下に変更します。

{
 "search": {
 "content": {},
 "limit": 10,
 "offset": 60
 }
}