Migration

A practical checklist for headless WordPress → Next.js migrations

July 28, 20263 min read
Cover image for “A practical checklist for headless WordPress → Next.js migrations”

Key takeaways

  1. Migrations fail in seams: redirects, preview, plugins, and the GraphQL contract—not the demo theme.
  2. Sequence Discover → Model → Migrate → Launch & Care so editors are never stranded.
  3. Soft-launch behind a host or path; retire the PHP theme last.
Inventory first. Cut over second.

Most headless migrations fail in the seams—not the demo. Editors keep WordPress; engineers want Next.js; nobody owns redirects, draft preview, or the plugins that silently power half the site.

Before you uncouple the theme, inventory:

  • Content types — posts, pages, CPTs, taxonomies, and ACF field groups that actually ship to the frontend.
  • URL surface — every public path that must survive cutover, plus query strings marketing depends on.
  • Must-keep plugins — SEO, redirects, forms, membership, multilingual. Decide what stays in WP vs what moves to the app.
  • Preview and drafts — how editors will see unpublished content on Next.js before launch.
  • GraphQL contract — types, naming, and pagination you will not casually break after go-live.

Then sequence the work: Discover → Model → Migrate → Launch & Care. Soft-launch behind a host or path, parity-check content, shift traffic, retire the theme last.

Related: Headless WordPress migration · Grow with us

Industry context

Why migration discipline matters

Published research on site speed and WordPress scale—not CodeFern client guarantees.

Work with CodeFern

Ready to grow the stack?

Tell me what you are shipping—WordPress, a headless cutover, React Native, or a mix—and we will map a clear next step.