From 931b72bceb316f3bde39e6e1c5c0f5bfaab10710 Mon Sep 17 00:00:00 2001 From: parsa aghaei Date: Mon, 14 Oct 2024 16:01:15 +0330 Subject: [PATCH] pagination added to filterd-posts --- .../blog/categories/[categorySlug]/page.tsx | 2 +- src/app/(routes)/blog/categories/page.tsx | 4 +-- .../blog/filtered-posts/[filter]/page.tsx | 31 ++++++++++++++----- src/app/types/types.ts | 1 + 4 files changed, 28 insertions(+), 10 deletions(-) diff --git a/src/app/(routes)/blog/categories/[categorySlug]/page.tsx b/src/app/(routes)/blog/categories/[categorySlug]/page.tsx index d6ef392..daf0449 100644 --- a/src/app/(routes)/blog/categories/[categorySlug]/page.tsx +++ b/src/app/(routes)/blog/categories/[categorySlug]/page.tsx @@ -65,7 +65,7 @@ export default async function SingleCategory({ -
+
{categoryData.posts.length > 0 ? ( categoryData.posts.map((post) => (

categories - + {CategoriesData.meta.total}

-
+
{CategoriesData.data.length > 0 ? ( CategoriesData.data.map((category: CategoryType) => (
res.json()); } else { - FilteredPostsData = { data: [] }; + FilteredPostsData = { data: [], meta: null, link: null }; } return ( @@ -62,14 +65,18 @@ export default async function FilteredPosts({
  • -

    +

    {params.filter.replaceAll(/%20|-|_/g, " ").toLowerCase()} + + + {FilteredPostsData.meta.total} +

  • -
    - {FilteredPostsData.data.length > 0 && +
    + {FilteredPostsData.data.length > 0 ? ( FilteredPostsData.data.map((post: PostType) => (
    - ))} + )) + ) : ( + + )}
    + {FilteredPostsData.data.length > 0 && + FilteredPostsData.meta.last_page > 1 && ( + + )}
    ); diff --git a/src/app/types/types.ts b/src/app/types/types.ts index a1d18a3..b66933e 100644 --- a/src/app/types/types.ts +++ b/src/app/types/types.ts @@ -80,6 +80,7 @@ export type CategoryDataType = { export type FilteredPostsPagepropsType = { params: { filter: string }; + searchParams: any; }; export type PostSlugPagepropsType = {