KO
베타 번역

@core / kit-blog

1.0.1 ▾
인증됨MIT
GitHub

Next.js 블로그 키트: 작성자·카테고리·태그·시리즈 글, 피드, 검토 댓글, 뉴스레터

코드파일 32개컨텍스트약 883토큰검사 통과

.genpmignore 적용 후 주입될 정확한 트리입니다. 고정 대상:

src/app/(blog)/blog/page.tsx읽기 전용 · fa952a4
import type { Metadata } from 'next';
import { listPosts } from '@/lib/blog';
import { buildMetadata } from '@/lib/seo';
import { PostList } from '../_components/post-list';
import { BLOG_PATH, PER_PAGE, pageParam } from '../_lib/blog';

type Props = { searchParams: Promise<Record<string, string | string[] | undefined>> };

export async function generateMetadata({ searchParams }: Props): Promise<Metadata> {
  const page = pageParam(await searchParams);
  return (await buildMetadata({ title: page > 1 ? `Blog – page ${page}` : 'Blog', path: page > 1 ? `${BLOG_PATH}?page=${page}` : BLOG_PATH })) as Metadata;
}

export default async function BlogIndex({ searchParams }: Props) {
  const page = pageParam(await searchParams);
  const { posts, pages } = await listPosts({ page, perPage: PER_PAGE });
  // En la primera página, los destacados primero.
  const ordered = page === 1 ? [...posts.filter((p) => p.featured), ...posts.filter((p) => !p.featured)] : posts;
  return <PostList title="Blog" posts={ordered} page={page} pages={pages} basePath={BLOG_PATH} />;
}

@core/kit-blog 신고

패키지를 신고하려면 GitHub로 로그인하세요.