How to generate static, paginated pages
Unanswered
Turkish Angora posted this in #help-forum
Turkish AngoraOP
Is my approach correct...
I want to create static routes for
I'm using a catch all route
My
};
});
// 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];
}
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.tsxMy
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];
}