diff --git a/app/search/(collection)/[...collection]/page.tsx b/app/search/(collection)/[...collection]/page.tsx index 847aaa258..1f8d4dfbf 100644 --- a/app/search/(collection)/[...collection]/page.tsx +++ b/app/search/(collection)/[...collection]/page.tsx @@ -31,11 +31,12 @@ export default async function CategoryPage({ params: { collection: string }; searchParams?: { [key: string]: string | string[] | undefined }; }) { - const { sort } = searchParams as { [key: string]: string }; + const { sort, page } = searchParams as { [key: string]: string }; const { sortKey, reverse } = sorting.find((item) => item.slug === sort) || defaultSort; const products = await getCollectionProducts({ collection: params.collection, + page: page ? parseInt(page) : 1, sortKey, reverse }); diff --git a/lib/shopware/criteria.ts b/lib/shopware/criteria.ts index 8b323186f..9abaa0899 100644 --- a/lib/shopware/criteria.ts +++ b/lib/shopware/criteria.ts @@ -1,6 +1,6 @@ export function getDefaultProductsCriteria(page: number = 1, limit: number = 15) { return { - page: page, + p: page, limit: limit, associations: getDefaultProductAssociations(), filter: [ diff --git a/lib/shopware/index.ts b/lib/shopware/index.ts index 54e90652f..4901c21cf 100644 --- a/lib/shopware/index.ts +++ b/lib/shopware/index.ts @@ -104,6 +104,7 @@ export async function getSearchCollectionProducts(params?: { export async function getCollectionProducts(params?: { collection: string; + page?: number; reverse?: boolean; sortKey?: string; categoryId?: string; @@ -129,7 +130,7 @@ export async function getCollectionProducts(params?: { if (category) { const criteria = !params?.defaultSearchCriteria - ? getDefaultProductsCriteria() + ? getDefaultProductsCriteria(params?.page) : params?.defaultSearchCriteria; const productsCriteria = { ...criteria, ...sorting }; res = await requestCategoryProductsCollection(category, productsCriteria);