Next · metadata

generateMetadata 결정 요소

게시물이나 상품 데이터가 바뀌면 title, description, openGraph도 같은 기준으로 갱신되어야 합니다.

동적 메타데이터 입력값

runtime SEO

데이터 조회

params.slug로 post를 가져오고 page와 같은 fetch를 재사용합니다.

없는 콘텐츠

데이터가 없으면 404용 title과 description을 먼저 반환합니다.

상위 병합

parent의 openGraph 이미지는 현재 대표 이미지 뒤에 보존합니다.

갱신 주기

상품 가격이나 게시물 수정일은 ISR, revalidate 정책과 함께 봅니다.

공유 이미지

opengraph-image.tsx가 있으면 페이지별 OG 이미지를 자동으로 연결할 수 있습니다.

스트리밍

동적 페이지에서는 메타데이터 해결과 화면 렌더링 타이밍을 분리해 이해합니다.

metadata는 데이터 조회 결과를 head 출력으로 변환한다

경로값 / 조회 / 병합
입력
조회/검증
출력
실패 기준
params.slug 게시글 또는 상품 식별자
본문과 같은 출처를 조회 페이지 데이터와 metadata 데이터가 어긋나지 않게 맞춥니다.
title / description 검색 결과와 공유 미리보기의 기본 문구가 됩니다.
데이터 없음 404 또는 기본 metadata로 명확히 갈라야 합니다.
parent metadata 상위 레이아웃의 OG 설정
필요한 값만 덮어쓰기 대표 이미지나 사이트명은 상위 값을 이어받을 수 있습니다.
openGraph 병합 페이지 고유 이미지가 없으면 공통 이미지를 유지합니다.
중복/누락 OG 이미지가 비거나 다른 콘텐츠와 섞이지 않게 확인합니다.
cache / revalidate 상품 가격, 게시글 수정 주기
본문 갱신 주기와 맞춤 본문은 최신인데 metadata만 낡는 상태를 피합니다.
일관된 SEO 스냅샷 검색 엔진과 공유봇이 같은 상태를 읽게 합니다.
스트리밍 지연 화면 렌더와 metadata 계산 비용을 분리해 봅니다.
route 값 data fetch fallback parent merge head 출력
metadata 데이터 기준

같은 데이터 출처에서 페이지 본문과 metadata를 만들면 검색 결과와 공유 미리보기가 실제 콘텐츠와 어긋나지 않습니다.