Een WordPress-site dupliceren betekent de bestanden en de database naar een ander adres kopiëren en daarna het oude adres overal in de database vervangen zonder de gegevens te beschadigen. Een plugin als Duplicator, All-in-One WP Migration of WPvivid doet dat in een paar klikken; WP-CLI in vier commando’s. Deze gids vergelijkt de tools, beschrijft de handmatige methode en somt op wat je op de kopie moet uitschakelen, zodat die geen e-mails naar je klanten stuurt en geen echte betalingen int.
Wil je vooral updates testen voor je ze uitrolt? Ons artikel over een stagingomgeving voor WordPress beschrijft de hele test- en uitrolcyclus. Verhuis je naar een andere host zonder van adres te veranderen? Lees dan liever hoe je een WordPress-site naar een nieuwe host verhuist. Hier gaat het om de kopie zelf: tools, methode, valkuilen.
Kopie, staging of verhuizing: drie behoeften
Achter het woord “dupliceren” zitten drie situaties die niet dezelfde voorzorgen vragen. Het verschil zit in één eenvoudige vraag: hoeveel sites draaien er aan het eind, en welke krijgt de echte bezoekers?
- Een blijvende kopie (sjabloonsite voor een klant, versie van een site voor een ander land, volledig redesign) wordt een zelfstandige site: nieuw adres, nieuwe licenties, eigen onderhoud.
- Staging is een tijdelijke kopie die afgesloten is voor het publiek. Ze wordt vanuit productie ververst en mag die nooit in zijn geheel vervangen, anders overschrijf je de bestellingen en accounts die intussen zijn aangemaakt.
- Een verhuizing is geen kopie die blijft: de oude site gaat uit na de DNS-omschakeling. Daarover gaat onze gids voor het verhuizen naar een nieuwe host.
De stappen van een geslaagde duplicatie
Welke tool je ook kiest, de kopie volgt steeds dezelfde volgorde. Plugins automatiseren de eerste vier stappen; de laatste twee blijven altijd jouw werk.
De dupliceertools vergeleken
| Tool | Werking | Gratis versie | Betaalde versie | Ideaal voor |
|---|---|---|---|---|
| Duplicator | Archief en installatiescript | Ja (Lite), sites van bescheiden omvang | Pro vanaf $ 79 (2 sites) | Klonen naar een lege server, sjabloonsites |
| All-in-One WP Migration | .wpress-bestand, geïmporteerd in een nieuwe WordPress | Ja, import begrensd door de uploadlimiet van de host | Unlimited Extension $ 69 per jaar (50 sites) | Beginners, kleine en middelgrote sites |
| WPvivid | Back-up, verhuizing en staging | Ja, met staging in een submap | Pro vanaf $ 49 per jaar of $ 99 eenmalig (2 domeinen) | Klein budget, staging inbegrepen |
| Migrate Guru | Overdracht van server naar server via eigen servers | Ja, grote sites (tot 200 GB) | Geen | Grote sites naar een andere host, niet lokaal |
| WP Staging | Kloon in een submap van dezelfde site | Ja, onbeperkt aantal klonen | Vanaf € 89 excl. btw per jaar | Staging met één klik op dezelfde server |
| UpdraftPlus | Back-up elders teruggezet (Migrator) | Alleen back-ups | Premium vanaf $ 84 per jaar (2 sites) | Sites die al met UpdraftPlus een back-up maken |
Duplicator: de archiefklassieker
Duplicator maakt een “pakket”: een archief van de site en een bestand installer.php. Je zet beide op de doelserver, opent de installer, geeft de nieuwe database op en hij vervangt het adres. De Lite-versie volstaat voor een site van redelijke omvang; Pro (van $ 79 voor 2 sites tot $ 599 voor 100 sites, catalogusprijzen) voegt geplande cloudback-ups, grote sites en multisite toe. Valkuil: installer en archief blijven op de doelserver staan als je ze na de installatie niet verwijdert.
All-in-One WP Migration: het eenvoudigst
Meer dan vijf miljoen installaties. Je exporteert een .wpress-bestand, installeert op de bestemming een lege WordPress met dezelfde plugin en importeert: adressen en geserialiseerde gegevens worden automatisch vervangen. De gratis export heeft geen groottelimiet, maar de import gaat via het uploadformulier en loopt tegen de limiet van de host aan. De Unlimited Extension ($ 69 per jaar, tot 50 sites) heft die limiet op en voegt WP-CLI-commando’s toe. Deze plugin had al meerdere kwetsbaarheden; houd hem bijgewerkt en verwijder hem als je hem niet meer nodig hebt (zie de geschiedenis van zijn lekken).
WPvivid en WP Staging: staging ingebouwd
WPvivid combineert back-up, verhuizing via bestandsupload en, al in de gratis versie, staging in een submap. Pro (vanaf $ 49 per jaar of $ 99 eenmalig voor twee domeinen) voegt meerdere stagingsites, publiceren naar de live site en multisite toe. WP Staging kloont de site in een submap van hetzelfde hostingpakket, met tabellen met een ander voorvoegsel in dezelfde database; de kloon is gratis en onbeperkt, maar wijzigingen terugzetten naar productie of de site naar een ander domein verhuizen vraagt een betaald plan (Personal voor € 89 excl. btw per jaar, zonder publiceren naar productie; Business voor € 139 excl. btw).
Migrate Guru en UpdraftPlus: voor grote of al geback-upte sites
Migrate Guru, gratis, kopieert een site tot 200 GB van server naar server via de eigen servers, met adresvervanging die geserialiseerde gegevens respecteert. Het werkt niet naar een lokale computer, maakt geen back-ups en vereist een WordPress met de plugin op de bestemming. UpdraftPlus zet een back-up terug op een andere site met de Migrator-module, inbegrepen in Premium (vanaf $ 84 per jaar voor twee sites); de logische weg als je er al back-ups mee maakt.
Veel hosts bieden ook een kloon met één klik: WP Toolkit in cPanel en Plesk, of de stagingfuncties van Kinsta, o2switch of Hostinger. Blijft de kopie bij dezelfde host, dan is dat vaak de snelste weg; onze hostprofielen, zoals WordPress-hosting bij Kinsta, beschrijven wat elk biedt.
De handmatige methode met WP-CLI
Zonder plugin, met SSH-toegang tot beide servers en WP-CLI, is de kopie snel, herhaalbaar en laat ze geen archief in een openbare map achter. De adressen hieronder zijn voorbeelden.
# 1. Op de bron: database exporteren en bestanden archiveren
wp db export /home/account/kopie.sql
tar -czf /home/account/bestanden.tar.gz -C /home/account/www .
# 2. Op de bestemming: uitpakken, wp-config.php aanpassen (database, gebruiker, wachtwoord)
tar -xzf bestanden.tar.gz -C /home/account/staging
wp db import kopie.sql
# 3. Adres vervangen: eerst als proefdraai, dan echt
wp search-replace 'https://www.voorbeeld.nl' 'https://staging.voorbeeld.nl' --skip-columns=guid --dry-run
wp search-replace 'https://www.voorbeeld.nl' 'https://staging.voorbeeld.nl' --skip-columns=guid
# 4. Omgeving aangeven, indexeren blokkeren, caches legen
wp config set WP_ENVIRONMENT_TYPE staging
wp option update blog_public 0
wp cache flush
wp rewrite flush
Bewaar de .sql- en .tar.gz-bestanden buiten de openbare map en verwijder ze na gebruik: een vergeten archief in de hoofdmap van de site is met één verzoek te downloaden (zie blootgestelde gevoelige bestanden). De optie --skip-columns=guid volgt het advies van WordPress: de kolom guid identificeert berichten voor feedlezers en mag niet veranderen.
Waarom zoeken en vervangen in SQL geserialiseerde gegevens breekt
WordPress en plugins slaan veel instellingen op als “geserialiseerde” PHP-arrays, waarin elke tekst wordt voorafgegaan door zijn lengte: s:24:"https://www.voorbeeld.nl". Vervang je het adres met een eenvoudige SQL-REPLACE() of in een teksteditor, dan klopt de opgegeven lengte niet meer met de tekst, kan PHP de waarde niet meer lezen en verdwijnt de instelling zonder foutmelding: lege widgets, gereset thema, verloren pagebuilderopties. De genoemde plugins en wp search-replace deserialiseren, vervangen en herberekenen de lengtes. Gebruik nooit iets anders.
Wat je op de kopie uitschakelt
Een getrouwe kopie doet alles wat productie doet: ze verstuurt e-mails, voert geplande taken uit, int betalingen en wordt geïndexeerd. Pas deze lijst toe nog voor je inlogt op de kopie; ons artikel over staging beschrijft elke barrière.
| Risico | Wat er gebeurt | Maatregel |
|---|---|---|
| Indexering | Google indexeert de kopie, dubbele inhoud | HTTP-wachtwoord op de hele kopie, naast noindex |
| E-mails | Herinneringen, facturen of nieuwsbrieven naar echte klanten | Plugin die e-mails blokkeert of opvangt, test-SMTP |
| Geplande taken | Abonnementen verlengd, exports verstuurd, dubbele synchronisaties | DISABLE_WP_CRON op true, servercrons niet kopiëren |
| Betalingen | Echte afschrijvingen, webhooks die productie wijzigen | Stripe, PayPal, Mollie en andere in testmodus, testsleutels |
| Premiumlicenties | Een activering verbruikt, of een kopie die een eigen licentie vraagt | Licentie op de kopie deactiveren, ontwikkelsleutels van de maker gebruiken |
| Persoonsgegevens | Klantaccounts op een minder beveiligde server | Gegevens anonimiseren of verwijderen voor je toegang deelt |
WooCommerce Subscriptions merkt zelf een afwijkend adres op en zet de kopie op handmatige verlengingen; de meeste andere plugins hebben die beveiliging niet. Premiumlicenties verschillen sterk per maker: sommige dekken ontwikkelsites, andere tellen elk adres. Lees de voorwaarden voor je kloont, zeker bij een sjabloonsite die vaak gekopieerd wordt.
WP Masquerade op een kopie van de site
De instellingen van WP Masquerade staan in de database: ze gaan mee met de kopie. Een paar punten verdienen een controle.
- Inlogadres: het geheime inlogadres is een pad en op de kopie identiek. Geef je de kopie aan een externe partij, verander het dan op de kopie om dat van productie niet prijs te geven.
- Accounts en tweestapsverificatie: wachtwoorden en geheimen van de tweestapsverificatie gaan mee met de database. Een kopie die vanaf internet bereikbaar is, is dus een tweede deur naar dezelfde accounts: bescherm haar met een HTTP-wachtwoord.
- Serverregels: de gratis plugin schrijft zelf het bestand dat zijn map verbergt opnieuw, bij het eerste bezoek van een beheerder. De aliassen van Pro (bestandsadressen) steunen op een blok in de
.htaccessin de hoofdmap dat het volledige pad van de site bevat: op een kopie in een submap of op een Nginx-server klopt het niet meer. Plak het blok dat voor de kopie is gegenereerd en klik op “Verifiëren en activeren”. - Als je jezelf buitensluit: de constante
define('CMS_MASQUERADE_DISABLE', true);inwp-config.phpschort de omzettingen op terwijl je het oplost. - Pro-licentie: die is gekoppeld aan het adres van de site. Een kopie op een ander adres valt niet onder de activering van productie; haar blijvend laten draaien vraagt een eigen licentieplaats. De voorwaarden voor ontwikkel- en stagingsites staan op de pagina prijzen.
WP Masquerade is geen back-up- of dupliceertool: het kopieert niets. Wil je alleen de instellingen op een andere site hergebruiken, gebruik dan het importeren en exporteren van instellingen.
Veelgestelde vragen
Met welke plugin dupliceer je een WordPress-site het eenvoudigst?
Met All-in-One WP Migration bij een kleine site: één bestand exporteren en in een nieuwe WordPress importeren. Is de site groter dan de uploadlimiet van de host, dan WPvivid of Duplicator, of Migrate Guru naar een andere server.
Kun je een site bij dezelfde host dupliceren?
Ja, in een subdomein of submap, met een aparte database of een ander tabelvoorvoegsel. WP Staging, WPvivid en de kloontools van hosts doen dat met één klik.
Schaadt de kopie de SEO van de originele site?
Alleen als ze geïndexeerd wordt: twee identieke sites beconcurreren elkaar. Bescherm de kopie met een HTTP-wachtwoord, dat ook crawlen verhindert, naast de optie “Zoekmachines ontmoedigen deze site te indexeren”.
Moet je premiumlicenties opnieuw kopen voor een kopie?
Dat hangt af van de maker: sommige dekken ontwikkel- of stagingsites, andere tellen elk adres. Een kopie die een zelfstandige site wordt, heeft meestal een eigen licentie nodig.
Waarom zijn mijn widgets verdwenen na zoeken en vervangen?
De vervanging heeft geserialiseerde gegevens gebroken. Zet de database terug en doe de vervanging opnieuw met wp search-replace of een plugin die met serialisatie overweg kan.
Om te onthouden
- Dupliceren = bestanden en database kopiëren en dan het adres vervangen met een tool die geserialiseerde gegevens respecteert.
- All-in-One WP Migration, Duplicator, WPvivid en Migrate Guru dekken de meeste gevallen; WP-CLI blijft het netst voor wie SSH heeft.
- Op de kopie: toegang beveiligd, e-mail en cron uit, betalingen in testmodus, licenties nagelopen.
- Verwijder archieven, SQL-exports en installers na de kopie.
- WP Masquerade: instellingen gaan mee, serverregels opnieuw zetten als het pad verandert, Pro-licentie gekoppeld aan het adres.
Een kopie die even onopvallend is als het origineel
De gratis versie van WP Masquerade verplaatst de inlogpagina, blokkeert XML-RPC en wist de sporen van WordPress, op productie en op de kopieën. Pro voegt tweestapsverificatie, inlogbeperking en waarschuwingen over kwetsbare plugins toe.
Bronnen
- WP-CLI: wp search-replace (externe link, opent in een nieuw tabblad)
- WordPress Developer: WordPress verhuizen (Engelstalig) (externe link, opent in een nieuw tabblad)
- WordPress.org: All-in-One WP Migration (externe link, opent in een nieuw tabblad)
- WordPress.org: Migrate Guru (externe link, opent in een nieuw tabblad)


