Ghost CMS naar WordPress migratie: 8 directe stappen (JSON, WXR en members)

Ghost CMS naar WordPress migratie stap voor stap: JSON naar WXR, members via MemberPress en de newsletter opnieuw opbouwen.

· 23 september, 2026 · 8 min lezen
In het kort
  • Ghost exporteert content als JSON — je converteert eerst naar WordPress WXR-formaat voor de import.
  • Members en Stripe-koppelingen exporteer je apart, MemberPress is de meest gebruikte overname-tool.
  • Voor grote Ghost-sites (500+ posts) werkt handmatige WP-CLI-conversie beter dan online converters.
  • Ghost's minimalistische styling bootst een schoon WordPress-thema als GeneratePress of Astra prima na.
  • Newsletter-workflow opnieuw opbouwen kost het meeste tijd — MailPoet, Newsletter Glue of ConvertKit-koppeling.
In dit artikel

Een Ghost CMS naar WordPress migratie overweeg je meestal op één van drie momenten: je content-project groeit voorbij wat Ghost’s plugin-ecosysteem aankan, je wilt een webshop toevoegen (WooCommerce is er niet voor Ghost), of je nieuwsbrief-focus verschuift naar een breder inhouds-platform met SEO-tools zoals Rank Math of Yoast. Ghost is uitstekend gebouwd voor pure newsletter-en-blog sites, maar zodra je meer types content, membership-modellen of e-commerce erbij wilt, loop je tegen grenzen aan. In dit artikel loop ik de acht stappen door voor een schone Ghost naar WordPress migratie, inclusief de JSON-naar-WXR conversie en de members-lijst.

Reken op één tot drie werkdagen voor een Ghost-site met tot vijfhonderd posts en een member-lijst tot vijfduizend. Grote publisher-sites met tienduizenden posts en een betaalde subscription-basis lopen op tot een week, vooral door de Stripe-koppeling en de MemberPress-configuratie.

Werkplek tijdens een Ghost CMS naar WordPress migratie met de 8 stappen

Wanneer een Ghost naar WordPress migratie logisch is

De sites die ik overzet komen meestal om vergelijkbare redenen. Ghost’s plugin-ecosysteem is bewust klein gehouden, wat het platform stabiel en snel maakt, maar tegelijk beperkend als je bijvoorbeeld een affiliate-plugin, een form-builder of een pop-up wilt. In WordPress heb je voor elk daarvan tien opties.

Ook e-commerce speelt vaak mee. Ghost heeft geen native shop-functionaliteit. Als je naast content ook producten of digitale downloads wilt verkopen, koppel je in Ghost met een externe tool en betaal je meerdere abonnementen. In WordPress voegt WooCommerce dat gratis toe aan dezelfde installatie.

Het derde argument is SEO. Ghost heeft basis-SEO netjes ingebakken, maar mist de granulariteit van Rank Math of Yoast: schema-typen, keyword-analyse per post, redirect-manager, XML-sitemap-configuratie. Voor sites die serieus met organisch verkeer willen groeien, is dat een hindernis.

Wat je opgeeft is Ghost’s compromisloze snelheid en het minimalistische publishing-experience. De WordPress-editor voelt anders. Kies je thema en plugin-set bewust licht, dan blijft de front-end vergelijkbaar snel. Verbeteren boven herbouwen: als je Ghost-site prima loopt en je hebt geen concrete plannen voor plugins of e-commerce, is een migratie soms overbodig.

Wat je uit Ghost kunt exporteren en wat niet

Ghost heeft twee exports die je apart draait: de content-export (JSON) en de members-export (CSV).

Ghost featureWordPress equivalent
Posts (JSON)Posts (WXR na conversie)
Pages (JSON)Pages (WXR na conversie)
Tags (JSON)Tags
Authors (JSON)Users (met author-mapping)
Images (Ghost content-folder)Media library (via importer of losse upload)
Members (CSV)MemberPress users of Newsletter Glue subscribers
Subscriptions (Stripe)MemberPress + Stripe of Paid Memberships Pro
Newsletter listMailchimp, MailerLite of Kit (native WP-koppeling)
Ghost integrationsOvereenkomstige WordPress-plugin

Posts, pagina’s, tags en afbeeldingen via JSON-export

In je Ghost admin ga je naar Settings → Advanced → Import/Export. Je downloadt een JSON-bestand met al je posts, pagina’s, tags en author-informatie. Afbeeldingen zitten niet in de JSON: die haal je apart op via de Ghost content-folder of via de losse image-URL’s in de posts.

Members, subscriptions en Stripe-koppelingen (aparte export)

In Settings > Members > Export exporteer je je members-lijst als CSV met naam, e-mailadres, status en signup-datum. Voor betaalde subscribers werk je in Stripe: die subscription-data blijft in Stripe staan en je koppelt straks WordPress’ MemberPress aan hetzelfde Stripe-account.

Van Ghost JSON naar WordPress WXR: twee routes

Ghost’s JSON en WordPress’ WXR (WordPress eXtended RSS) zijn verschillende formats. Je hebt een conversie nodig.

Route 1: online converter (wpghostimport.com)

De snelste route voor kleine tot middelgrote sites is de Ghost naar WordPress converter: je uploadt je Ghost JSON, de tool converteert naar WXR en je downloadt het resultaat. Voor sites tot ongeveer duizend posts werkt dit foutloos. Voor grotere archieven of gevoelige data die je liever niet naar een externe tool stuurt, is Route 2 beter.

Route 2: handmatige conversie via WP-CLI voor grote sites

Voor grote sites of situaties waarin de JSON custom velden bevat, gebruik ik een klein Node.js-script of een Python-script dat de nested JSON-structuur van Ghost (db/data/posts/0/title) flatten en converteert naar WXR. De WXR laad ik daarna via wp-cli:

wp import ghost-export.wxr --authors=create

Het --authors=create argument zorgt dat Ghost-auteurs als WordPress-gebruikers worden aangemaakt.

Ghost JSON-export omgezet naar WordPress WXR-import format

Content-import via Tools > Import > WordPress

Met een WXR-bestand in handen ga je in WordPress naar Tools > Import > WordPress. Upload het WXR, mapp de auteurs en zet vinkje bij “Download and import file attachments” om de afbeeldingen mee te trekken uit je Ghost content-folder.

Voor Ghost-sites waar de afbeeldingen op een CDN staan (bijvoorbeeld Digital Ocean Spaces of AWS S3), moet je die apart downloaden en via FTP naar /wp-content/uploads/ uploaden. Gebruik daarna de Better Search Replace-plugin om de oude CDN-URL’s in de posts te vervangen door je nieuwe WordPress-mediapad.

Verifieer na de import op vijf willekeurige posts: titel, publicatiedatum, tags, afbeeldingen en de auteur moeten overeenkomen met wat je in Ghost had.

Members migreren naar WordPress

Voor Ghost’s members zijn er twee scenario’s: alleen gratis subscribers, of gratis plus betaalde subscribers.

MemberPress voor betaalde subscribers

Voor betaalde members installeer je MemberPress in WordPress. Je koppelt hetzelfde Stripe-account dat aan Ghost hing, en importeert de members-CSV via de MemberPress import-tool. Bestaande subscriptions blijven bij Stripe actief: je hoeft ze niet opnieuw op te zetten, alleen te koppelen aan de nieuwe MemberPress-abonnementsvormen.

Reken op twee tot vier uur voor de MemberPress-configuratie: abonnementsvormen aanmaken die de Ghost-tiers spiegelen (bijvoorbeeld Free, Monthly, Yearly), Stripe-webhooks koppelen, e-mail-templates aanpassen.

Voor sites met een membership-focus is er ook een uitgebreidere gids over hoe je een membership site opzetten in WordPress, met de plugin-vergelijking (MemberPress, Paid Memberships Pro, Restrict Content Pro).

Newsletter-lijst overzetten

Voor de gratis subscribers die in Ghost je newsletter kregen, exporteer je de members-CSV en importeer je die in Mailchimp, MailerLite of Kit. Al die drie hebben een native WordPress-koppeling voor het ophalen van nieuwe signups.

Communiceer richting je subscribers voor de wissel: één mail met een re-opt-in (GDPR-veilig, voorkomt spam-klachten) is de manier om te bevestigen dat ze het nieuwsbrief-abonnement willen voortzetten.

MemberPress in WordPress met geïmporteerde Ghost-members en Stripe-koppeling

Newsletter-workflow opnieuw opbouwen in WordPress

Ghost stuurt newsletters vanuit dezelfde tool waar je publiceert. In WordPress werkt het anders: je kiest een externe nieuwsbrief-service (MailerLite, Kit, ActiveCampaign) en koppelt die aan WordPress via een plugin of via de post-to-newsletter automation.

Voor bloggers die de Ghost-workflow (“publiceer een post + verstuur direct als newsletter”) willen behouden, is Newsletter Glue de meest complete plugin. Voor grotere publishers is een aparte ESP zoals Kit of ActiveCampaign flexibeler, met eigen segmentatie en automation.

Test met een kleine segment (jijzelf en een paar test-adressen) voordat je de eerste échte newsletter naar de volledige lijst stuurt.

Thema kiezen dat Ghost’s minimalistische stijl benadert

Ghost-users die van de minimale, snelle look houden, pikken in WordPress meestal een van deze drie thema’s:

  • Kadence. Licht, snel, met een uitgebreide gratis versie en veel typografie-controle.
  • GeneratePress. Al jaren de gouden standaard voor snelheid en flexibiliteit.
  • Blocksy. Modern, Gutenberg-native, met Ghost-achtige typografie out-of-the-box.

Vermijd zware page-builders zoals Divi of Avada als snelheid en leesbaarheid je prioriteit zijn.

Post-migratie: canonicals, redirects en Search Console

Ghost gebruikt standaard /post-slug/ als URL-structuur. WordPress kan dat exact spiegelen via Instellingen > Permalinks > Post name. Als je Ghost een custom URL-structuur gebruikte (bijvoorbeeld met een /blog/ prefix), stel je hetzelfde in WordPress in of zet je 301-redirects van de oude structuur naar de nieuwe.

Verifieer op vijf posts dat de canonical-tag (<link rel="canonical" ...="">) naar de nieuwe WordPress-URL wijst. Dien je sitemap.xml opnieuw in bij Google Search Console. Voor de generieke aanpak van deze fase zie de algemene WordPress migratie best practices gids.

Voor Ghost’s officiële migratie-documentatie kun je ook terecht bij de officiële Ghost migratie-docs van Ghost zelf. Die zijn kort maar geven een tweede referentie op de export-stappen.

Kosten en tijdsinvestering

Voor migraties reken ik 95 euro per uur. Realistische ranges voor een Ghost naar WordPress migratie:

  • Kleine blog (tot 200 posts, alleen gratis members): 8 tot 12 uur, circa 760 tot 1.140 euro exclusief BTW.
  • Middelgrote publisher (500 tot 1.500 posts, gemixte member-tiers): 20 tot 35 uur, circa 1.900 tot 3.330 euro exclusief BTW.
  • Grote publisher (5.000+ posts, complexe subscriptions): 50 tot 90 uur, 4.750 tot 8.550 euro exclusief BTW.

Bij deze bedragen zit content-conversie, members-import, MemberPress-configuratie, thema-inrichting en de eerste week nazorg. Custom-thema-ontwikkeling of maatwerk-plugins reken ik apart.

Multi-stack: aanpak werkt breder

Dezelfde acht-stappen-flow werkt met kleine aanpassingen ook voor migraties vanuit Substack (via de Substack-export als CSV), Medium of een Drupal-blog. De importer-tools verschillen, maar de fases (export, converteer, importeer, members, newsletter, redirects, canonicals, monitoring) zijn universeel.

Hulp bij je Ghost-migratie?

De members-migratie is meestal het lastigste onderdeel. Wie de Stripe-koppeling verkeerd zet, kan bestaande subscriptions verliezen of dubbele charges veroorzaken. Direct contact met de persoon die het werk uitvoert, scheelt tijd bij elke escalatie op livegang-dag. Bel of app, ik zie hetzelfde scherm.

Serhii Lypii
Gratis meedenken

Ghost CMS naar WordPress migratie laten begeleiden?

Stuur me je Ghost-URL, het aantal posts en of je een members-lijst hebt. Ik mail terug met een urenraming en een concrete planning.

Stuur je vraag
Vond je dit nuttig? Deel het:
FAQ

Veelgestelde vragen over Ghost CMS naar WordPress migreren

Kan ik mijn Ghost-members meenemen naar WordPress?
Ja, via een CSV-export uit Ghost en een import in MemberPress (betaalde) of MailerLite/Kit (gratis newsletter-subscribers). Betaalde subscriptions blijven in Stripe actief, je koppelt alleen MemberPress aan hetzelfde Stripe-account.
Blijven mijn Stripe-subscriptions actief tijdens de migratie?
Ja, mits je Stripe-account hetzelfde blijft. De koppeling verschuift van Ghost naar MemberPress, maar de bestaande subscriptions lopen door zonder onderbreking. Test met één subscription voordat je de migratie livegang doet.
Hoe zit het met mijn newsletter-lijst?
Die verhuis je naar een externe ESP (MailerLite, Kit, ActiveCampaign) of naar een WordPress-plugin zoals Newsletter Glue. Vraag re-opt-in via een korte welcome-mail om GDPR-compliant te blijven.
Behoud ik mijn Google-rankings na de migratie?
Ja, mits je Ghost's URL-structuur exact spiegelt in WordPress (meestal /post-slug/) en je een 301-redirect zet voor eventuele afwijkende structuren. Dien je nieuwe sitemap in bij Search Console binnen 48 uur na livegang.
Kan ik zelf migreren met de wpghostimport-tool?
Voor kleine sites tot 500 posts, ja. Voor grotere sites of sites met een betaalde member-basis is begeleiding meestal een goede investering: de Stripe-MemberPress-koppeling is technischer dan hij lijkt.
Serhii Lypii
Over de auteur

Serhii Lypii

Freelance webmaster · Terneuzen

Sinds 2012 werk ik met websites en leverde ik ruim 210 projecten op. Ik help mkb-ondernemers met onderhoud, snelheid, beveiliging en praktische automatisering. Nuchter, zonder hype.

Ik schreef dit artikel op en werkte het voor het laatst bij op .

Meer over Lypii
Even sparren over je site?

Loop je ergens tegenaan of twijfel je over je site? Ik denk graag mee. Kies hieronder hoe je contact opneemt.

Reactie binnen 4 uur op werkdagen
Navigatie
Home Over mij Kennisbank
Contact
+31 6 39 56 93 03 serhii@lypii.nl WhatsApp
Stuur een bericht