1. Next.js + Headless WordPress 상세 가이드
👍. 1위로 꼽은 **Next.js (React 기반)**를 Headless WordPress와 함께 사용하는 상세 가이드를 단계별로 정리해드릴게요.
🥇 Next.js + Headless WordPress 상세 가이드
1. Next.js 선택 이유
- SSR/SSG 지원: 검색엔진 최적화(SEO)에 유리하고, 빠른 페이지 로딩 가능.
- 대규모 커뮤니티: 튜토리얼, 플러그인, 예제 코드가 풍부해 학습 자료 확보 용이.
- Vercel 최적화: Next.js는 Vercel에서 바로 배포 가능 → JAMstack 환경과 잘 맞음.
- React 기반: 이미 React 경험이 있다면 진입 장벽이 낮음.
2. 준비 단계
- WordPress 설치 및 API 활성화
- WordPress REST API는 기본 제공.
- 더 강력한 쿼리를 원한다면 WPGraphQL 플러그인 설치.
- Next.js 프로젝트 생성
npx create-next-app headless-wp-demo cd headless-wp-demo npm run dev→ 기본 개발 서버 실행 후http://localhost:3000접속.
3. WordPress 데이터 가져오기
(A) REST API 방식
// pages/index.js
export async function getStaticProps() {
const res = await fetch('https://your-wp-site.com/wp-json/wp/v2/posts');
const posts = await res.json();
return {
props: { posts },
};
}
export default function Home({ posts }) {
return (
<div>
<h1>WordPress Posts</h1>
<ul>
{posts.map(post => (
<li key={post.id}>{post.title.rendered}</li>
))}
</ul>
</div>
);
}
(B) GraphQL 방식 (WPGraphQL 설치 시)
import { request } from 'graphql-request';
export async function getStaticProps() {
const query = `
{
posts {
nodes {
id
title
content
}
}
}
`;
const data = await request('https://your-wp-site.com/graphql', query);
return {
props: { posts: data.posts.nodes },
};
}
4. 배포
- Vercel: Next.js 공식 호스팅 → GitHub 연결 후 자동 배포.
- Netlify/Cloudflare Pages: JAMstack 호스팅 서비스로도 가능.
5. 성능 최적화 팁
- ISR (Incremental Static Regeneration): 콘텐츠 업데이트 시 전체 빌드 없이 부분적 갱신 가능.
- 이미지 최적화: Next.js
Image컴포넌트 활용. - 캐싱 전략: API 응답 캐싱으로 속도 향상.
6. 초보자에게 추천하는 학습 순서
- React 기본 문법 → Next.js 라우팅/데이터 페칭 학습.
- WordPress REST API 구조 이해.
- 작은 블로그 프로젝트로 연습.
- GraphQL로 확장 → 더 복잡한 쿼리와 데이터 관리.
👉 원하시면 제가 Next.js + WPGraphQL을 이용한 블로그 전체 예제 프로젝트 구조를 디렉토리별로 정리해드릴 수 있습니다.
