블로그 엔진
규칙
- MDX 콘텐츠:
content/blog/[slug].mdx— 제목, 설명, 게시일, 수정일, 태그, 이미지를 포함한 프론트매터 - 동적 라우팅:
app/blog/[slug]/page.tsx— 빌드 시 MDX를 가져오고, 파일 시스템에서 정적 파라미터 생성 - RSS 피드:
/rss.xml에feed.xml생성 — 각 게시물의 제목, 설명, pubDate, 링크, guid 포함 — 빌드 시 재생성 - 사이트맵: 모든 블로그 URL, lastmod 날짜, changefreq가 포함된
sitemap.xml생성 — Google Search Console에 제출 - JSON-LD 구조화 데이터: 모든 게시물에
Article스키마 — headline, datePublished, dateModified, author, image, publisher - 관련 게시물: 태그 기반 매칭 — 2개 이상의 태그를 공유하는 게시물 찾기, 없으면 최근 게시물로 대체 — 3개의 관련 게시물 표시
- 목차: MDX의 H2/H3 제목에서 자동 생성 — 데스크탑에서 고정 사이드바로 렌더링
- 페이지네이션: 페이지당 10개 게시물,
/blog/page/[num]— SEO를 위해 이전/다음 링크 포함
프론트매터 스키마
title: "게시물 제목"
description: "160자 미만의 메타 설명"
publishedAt: "2025-01-15"
updatedAt: "2025-02-01"
tags: ["nextjs", "react"]
image: "/blog/post-title/cover.jpg"
author: "작성자 이름"
RSS 피드 패턴
API 라우트에서 제공하거나 빌드 시 생성합니다. 필수 필드: <title>, <link>, <description>, 게시물당 <item> (<guid>, <pubDate> 포함).
피해야 할 사항
- 프론트매터에
publishedAt누락 — RSS 및 정렬이 깨짐 - 사이트맵 미제출 — Google이 새 게시물을 빠르게 발견하지 못함
- JSON-LD 생략 — 리치 스니펫 자격 상실
- 관련 게시물 하드코딩 — 자동 관련성을 위해 태그 매칭 사용