Joomla naar WordPress migreren stappenplan zonder dataverlies
Joomla naar WordPress migreren stappenplan zonder data- of SEO-verlies. Zes stappen op basis van veertien jaar migratie-ervaring.
In dit artikel
Joomla-migraties kom ik met enige regelmaat tegen, en het patroon is bijna altijd hetzelfde: een site die tussen 2014 en 2018 op Joomla werd gebouwd, een eigenaar die de admin liever niet meer aanraakt, en weinig onderhoudspartijen die nog graag aan Joomla werken.
Voor wie nu nog op Joomla 3 draait, is er bovendien een deadline gepasseerd. Sinds augustus 2023 krijgt Joomla 3 geen beveiligingsupdates meer. Doorgaan met Joomla betekent dus upgraden naar versie 4 of 5. Daar zit voor veel eigenaren net zo veel werk als overstappen naar een systeem dat een grotere community heeft.
Hieronder mijn stappenplan om een Joomla-site naar WordPress te migreren zonder dat je data, media of SEO verliest. Zes stappen, gebaseerd op de migraties die ik door de jaren heb gedaan.

Waarom mensen Joomla verlaten
Het is niet zozeer dat Joomla slecht is. Het is dat de community kleiner wordt. WordPress draait wereldwijd op ongeveer 43 procent van alle websites, Joomla op iets meer dan 2 procent en dat aandeel daalt al jaren. Voor MKB-eigenaren betekent dat: minder developers die nog willen werken aan Joomla, minder actief onderhouden extensies en hogere prijzen voor specialistisch werk.
Praktische redenen die ondernemers hiervoor noemen:
- De huidige Joomla-versie krijgt geen updates meer. Vooral Joomla 3-sites lopen sinds 2023 risico.
- De extensies waarop de site leunt worden niet meer ondersteund.
- Een upgrade van Joomla 3 naar 4 of 5 is geen kleine update, het is in feite een migratie. Dan kunnen mensen net zo goed naar WordPress kijken.
- Eigen content-team wil zelf kunnen publiceren en vindt de Joomla-editor onhandig.
- De volgende ontwikkelaar moet vindbaar zijn. WordPress-developers zijn er overal.
Niet voor elke site is overstappen logisch. Heb je een complexe webshop op VirtueMart of HikaShop die jaren goed draait, dan kan het verstandiger zijn om eerst te upgraden binnen Joomla. Maar voor het overgrote deel van de brochuresites en kleinere webshops is migreren een eindstation dat ooit toch komt.
Voorbereiding: backup, inventarisatie en staging
De voorbereiding bepaalt of een migratie soepel verloopt of een drama wordt. In mijn ervaring is dit ook de stap waar het meeste mis gaat, omdat eigenaren of bureaus haastig overschakelen.
Volledige backup. Eerst de bestanden via FTP of via cPanel, dan een database-export via phpMyAdmin. Bewaar dit op een externe schijf, niet op de server van de oude site. Test de backup door een paar bestanden lokaal te openen.
Inventarisatie. Loop systematisch door:
- Hoeveel artikelen, categorieën en menupunten heeft de site
- Welke extensies en plugins zijn actief
- Welke URL-structuur wordt gebruikt (SEF URLs aan of uit, met of zonder ID)
- Welke aangepaste templates of CSS-overrides bestaan
- Welke formulieren actief zijn en waar de submissions naartoe gaan
- Of er gebruikersaccounts overgenomen moeten worden
Staging-omgeving voor WordPress. Een staging-omgeving is een werkende kopie van je toekomstige site op een sub-domein of in een aparte hostingmap. Hier bouw je de nieuwe WordPress-site, test je de import en doe je alle aanpassingen. De productie-Joomla blijft tijdens dit hele traject ongemoeid. Pas bij stap 5 schakel je over.
Bij de meeste hostings is staging een knop in cPanel. Bij eigen servers maak je een sub-domein zoals nieuw.jouwsite.nl en installeer je daar een schone WordPress.
Inhoud, media en categorieën overzetten
Voor de daadwerkelijke import gebruik ik vrijwel altijd de plugin FG Joomla to WordPress, ontwikkeld door fgsoftwarefactory. De gratis versie verzet artikelen, categorieën, secties en interne afbeeldingen. De Premium-versie (eenmalig betaald) doet ook tags, gebruikersaccounts, custom fields en SEF-URL mapping.
Mijn standaardworkflow:
- Installeer FG Joomla to WordPress in je staging-WordPress.
- Vul de Joomla-database credentials in. De plugin leest direct uit de oude database, dus stevige uptime nodig tijdens import.
- Test eerst met “Limit number of articles” op 10. Controleer of categorieën, opmaak en mediaverwijzingen kloppen.
- Als de testimport schoon oogt, draai je de volledige import. Voor een site met 500 artikelen reken ik op 15 tot 30 minuten serverwerk.
- Controleer alle media-bestanden. De plugin verzet de bestanden, maar URL-paden binnen artikelen verwijzen soms nog naar
/images/...(Joomla) in plaats van/wp-content/uploads/...(WordPress). Een zoek-en-vervang in de database lost dat op.

Wat niet automatisch overkomt: aangepaste extensies (formulieren, sliders, galerieën). Die moet je opnieuw bouwen met een WordPress-equivalent. Plan hier tijd voor in. Een uitgebreid Contact Enhanced-formulier in Joomla wordt geen automatisch Gravity Forms-formulier in WordPress.
301-redirects opzetten zonder SEO-verlies
Dit is de stap waar de meeste DIY-migraties stuklopen. Zonder redirects verlies je alle ranking-power van bestaande URLs en haalt Google je oude pagina’s binnen een paar weken uit zijn index.
Google publiceert hier zelf duidelijke richtlijnen via Search Central site move documentation. De kern: elke oude URL moet via een 301-redirect naar de bijbehorende nieuwe URL gaan.
Mijn werkvolgorde:
- Crawl de oude site met Screaming Frog (gratis tot 500 URLs) of een vergelijkbare tool. Exporteer alle URLs naar een CSV.
- Map oude URLs aan nieuwe. Joomla-URL
/index.php?option=com_content&view=article&id=42wordt WordPress-URL/over-ons(bijvoorbeeld). Bij honderden artikelen wordt dit een spreadsheet-klus. FG Joomla to WordPress kan een redirect-bestand exporteren, dat scheelt veel. - Implementeer redirects. Twee manieren:
- Plugin Redirection in WordPress: gebruiksvriendelijk, exporteert en importeert via CSV, geeft monitoring van 404’s.
- Direct in
.htaccess: lichter voor de server, maar minder flexibel bij wijzigingen.
- Test elke redirect voordat je live gaat. Tools zoals httpstatus.io of een eenvoudige curl-check vanaf de command line tonen of je echt een 301 krijgt en niet een 302 of 200.
- Behoud canonical URLs waar mogelijk. Verander de URL-structuur in WordPress liever niet drastisch, ook al kan het mooier. Hoe meer URLs identiek blijven, hoe minder redirects en hoe minder ranking-risico.

Lancering en monitoring
De daadwerkelijke overgang vraagt niet veel uren, maar wel zorgvuldige timing.
Kies een rustig moment. Geen vrijdagavond, geen kort voor een drukke verkoopperiode. Op een dinsdagochtend heb je nog vier werkdagen voor eventuele problemen.
Pre-launch checklist een dag van tevoren:
- Staging-site nogmaals doorlopen op werkende formulieren, links, afbeeldingen.
- E-mail van het oude domein omleiden of mailservers controleren (DNS-wijziging raakt vaak ook mail).
- Backup-verversing van de oude productie-Joomla en van de staging-WordPress.
- Sitemap van de nieuwe WordPress gegenereerd via Yoast of Rank Math.
De omschakeling zelf:
- Zet de oude Joomla in onderhoudsmodus.
- Verhuis WordPress van staging naar productie. Bij voorkeur via een plugin als All-in-One WP Migration of via een handmatige database-export en bestandenkopie.
- Update de DNS-records om naar de nieuwe hosting te wijzen (TTL voor de zekerheid een dag eerder al lager gezet).
- Activeer alle redirects en controleer of ze werken op de nieuwe site.
Eerste 72 uur na lancering:
- Dien de nieuwe sitemap in bij Google Search Console en gebruik de “Change of Address”-tool.
- Monitor 404’s via de Redirection-plugin en voeg ontbrekende redirects toe.
- Check de Coverage-rapportage in Search Console dagelijks.
- Houd de bouncerate en het organisch verkeer in de gaten via Google Analytics.
Wat ik leerde van mislukte migraties
Niet alles ging in mijn loopbaan vlekkeloos. Drie lessen die de moeite waard zijn:
Eén: onderschat extensie-mapping nooit. Een Joomla-site die ik vorig jaar overzette had een eigen reserveringssysteem als extensie. Het migreren van klantgegevens kostte uiteindelijk meer tijd dan de hele contentmigratie. Vraag vooraf altijd: welke functionaliteit is essentieel, en bestaat daar een werkende WordPress-equivalent voor?
Twee: redirects testen op productie-traffic. Op staging werkt alles. Eenmaal live blijken sommige redirect-regels te conflicteren met cacheplugins of CDN-instellingen. Plan een actief testuur in op de eerste werkdag na lancering.
Drie: communicatie met de klant. Vooraf duidelijk maken dat een migratie ranking-fluctuaties geeft in de eerste twee tot zes weken. Anders krijg je paniekberichten omdat het verkeer in week één met 20 procent zakt. Dat zakt vrijwel altijd, en herstelt vrijwel altijd binnen een maand als je de redirects en sitemap correct hebt.
Wanneer uitbesteden slim is
Niet elke migratie hoort als doe-het-zelf-project. Een paar signalen dat externe hulp goedkoper uitvalt:
- De site heeft meer dan 200 artikelen of complexe categoriestructuren
- Er draaien custom extensies waar geen WordPress-equivalent voor bestaat
- Je hebt een vaste deadline (campagne, seizoen, productlancering)
- De huidige Joomla-installatie heeft aanpassingen in core-bestanden
- De site is een belangrijke leadgenerator en downtime is duur
Een migratie ligt doorgaans tussen €1.200 en €3.500, inclusief redirects, content-check en de eerste twee weken nazorg. Een doe-het-zelf-traject kost typisch een tot twee werkweken, exclusief de tijd om over fouten heen te komen.
Heb je een vraag over dit onderwerp? Stuur een bericht, ik reageer binnen 4 uur op werkdagen. Meer praktische uitleg over migraties staat in de categorie website migratie. Voor de scope van een specifieke migratie kun je terecht op de pagina diensten.
Vragen die ik vaak krijg over Joomla-migraties
Hoe lang duurt zo'n migratie?
Voor een brochuresite met 50 tot 200 artikelen reken ik op twee tot vier werkdagen verspreid over twee weken. Voor een grotere site met extensies of een webshop oplopend tot zes weken. De doorlooptijd is langer dan de werkdagen omdat er testfases tussen zitten, plus de eerste twee weken na lancering voor monitoring.
Verlies ik mijn Google-rankings?
In de eerste weken na een correct uitgevoerde migratie zie je vaak een dip van 10 tot 30 procent organisch verkeer. Bij een goede redirect-structuur en sitemap-melding bij Google herstelt dat doorgaans binnen drie tot zes weken. Een slechte migratie zonder redirects kan permanente schade aanrichten waarvan herstel maanden duurt.
Wat gebeurt er met mijn Joomla-gebruikersaccounts?
De Premium-versie van FG Joomla to WordPress verzet gebruikersaccounts inclusief wachtwoorden (mits Joomla en WordPress dezelfde hash-methode gebruiken). Anders moeten gebruikers eenmalig een wachtwoord resetten. Bij ledenaccounts altijd vooraf communiceren wat er gaat gebeuren.
Wat als ik een aangepaste extensie heb die ik niet kan missen?
Twee opties. Eén: een WordPress-plugin vinden die hetzelfde doet (vaak bestaat er een equivalent). Twee: de functionaliteit laten herbouwen als custom plugin of theme-functie. Optie twee kost meer maar geeft volledige controle. Bij een eerste advies kijk ik altijd of er een out-of-the-box-oplossing bestaat voordat ik custom werk voorstel.
Kan ik na de migratie nog terug naar Joomla als het tegenvalt?
Technisch ja, omdat je de oude installatie bewaart. In de praktijk doe je het bijna nooit. Belangrijker is daarom de testfase op staging grondig uit te voeren voordat je live gaat. Eenmaal omgeschakeld is terugschakelen een tweede migratie met dezelfde risico's.