Next.js Discord

Discord Forum

How to generate static, paginated pages

Unanswered
Turkish Angora posted this in #help-forum
Open in Discord
Turkish AngoraOP
Is my approach correct...

I want to create static routes for /blog/2, /blog/3 etc but I also have static pages at routes such as /blog/my-blog-post.

I'm using a catch all route app/blog/[...slug]/page.tsx

My generateStaticParams looks like this...

``export async function generateStaticParams() { const data = await fetchBlogPosts({ version: 'published', by_slugs: 'blog/*', per_page: 100, is_startpage: false, }); const totalPosts = data.total; const totalPages = Math.ceil(totalPosts / BLOG_POSTS_PER_PAGE); // Creates routes for paginated pages e.g. /blog/2 const pageNumbers = Array.from(Array(totalPages).keys()).map((pageNumber) => { return { slug:${pageNumber + 2}`,
};
});

// Creates routes for blog pages e.g. /blog/my-blog-post
const blogSlugs = data.data.stories.map((post) => {
return {
slug: post.slug,
};
});

return [pageNumbers, blogSlugs];
}

0 Replies