Notion 데이터와 4.x 기능
대응 파일:
conf/notion.config.js,lib/db/SiteDataApi.js· 버전 4.10.2
필수 환경
| 변수 | 설명 |
|---|---|
NOTION_PAGE_ID | 사이트 루트 페이지의 32자리 ID. 다국어는 id,en:xxx처럼 쉼표로 구분할 수 있습니다. |
NOTION_TOKEN_V2 | 비공개 데이터베이스를 사용할 때 필수 |
데이터베이스 뷰 (NOTION_INDEX)
NOTION_INDEX, 또는 NEXT_PUBLIC_NOTION_INDEX, 는 Notion 데이터베이스의 몇 번째 뷰를 정렬과 목록의 출처로 사용할지 지정합니다.
0= 첫 번째 뷰, 기본값-1= 마지막 뷰
Notion에서 뷰 정렬을 조정한 뒤에는 다시 배포하거나 ISR 새로고침을 기다려야 합니다.
필드명 사용자 지정
NOTION_PROPERTY_NAME으로 영어 표 헤더를 원하는 이름으로 바꿀 수 있습니다. 키에는 title, status, type, slug, category, tags, date, summary, password, icon, ext 등이 포함됩니다. 자세한 내용은 conf/notion.config.js를 참고하세요.
콘텐츠 타입 (type)
| type | 설명 |
|---|---|
Post | 블로그 글. 목록에 표시됩니다. |
Page | 단일 페이지 |
Menu / SubMenu | 사용자 지정 내비게이션. menu-secondary.md 참고 |
Notice | 공지 |
Config | 설정 센터 표 |
status는 Published, 또는 설정에서 정의한 게시 값, 이어야 표시됩니다.
예약 발행
POST_SCHEDULE_PUBLISH / NEXT_PUBLIC_NOTION_SCHEDULE_PUBLISH: Notion date 필드로 게시와 내려가기를 제어합니다.
글 비밀번호
Notion password 필드를 지원합니다. 서버 검증은 SHA256을 사용하며 기존 md5와 호환됩니다. 저장소 lib의 글 잠금 관련 구현을 참고하세요.
단일 글 댓글 숨김
데이터베이스에 Select 속성 **comment**를 추가하고 값이 Hide이면 해당 글의 댓글 영역을 숨깁니다. 4.5.4+.
외부 미디어 임베드
Notion의 비디오/오디오 블록은 normalizeExternalMediaBlock으로 처리됩니다. Apple Music 같은 임베드 URL도 정규화되어 글에서 올바르게 렌더링됩니다.
전역 상단 고정 태그 (TOP_TAG)
Config 또는 환경 변수에서 TOP_TAG / NEXT_PUBLIC_TOP_TAG를 설정합니다.
- 이 태그가 붙은 여러 "상단 고정" 글은 고정 글 묶음 안에서 최근 업데이트 시간 역순으로 정렬됩니다.
- 고정되지 않은 글의 순서에는 영향을 주지 않습니다.
글쓰기와 템플릿
- 데이터베이스 사용법: notion-database.md
- 공식 템플릿: tanghh.notion.site template
업그레이드 주의, 2026
Notion API / 데이터 구조는 여러 차례 변경되었습니다. NotionNext와 latest 권장 버전을 일치시켜 유지하세요. 그렇지 않으면 페이지를 완전하게 가져오지 못할 수 있습니다.
