WooCommerce webshop migreren naar een andere domeinnaam
De beslissing is gemaakt. We gaan onze webshop foodiewinkel.nl verhuizen naar een in onze ogen betere domeinnaam, namelijk foodie.nl.
Het kan zijn dat jij ook in de situatie zit dat je twijfelt over de domeinnaam van je webwinkel en of het niet handiger is om over te gaan naar een andere domeinnaam omdat deze naam op de lange termijn beter in de markt te zetten is.
Mocht jij ook in deze situatie zitten, dan is deze handleiding wat voor jou. We behandelen hier alle stappen die we genomen hebben om onze WooCommerce webshop volledig (inclusief bestellingen en klanten) over te zetten naar een andere domeinnaam. Benieuwd hoe je dit kunt doen? Laten we dan maar snel beginnen.
Maak een back-up van je huidige website
Dit is natuurlijk een hele logische stap die je zelf ook wel bedacht hebt. Je hebt een volledige back-up nodig van je website voordat je jouw website kunt verplaatsen naar een andere domeinnaam.
Met een volledige back-up bedoel ik een back-up van alle bestanden die op de webserver staan en natuurlijk de database. De WordPress bestanden, thema’s, afbeeldingen en video’s worden namelijk allemaal op de server bewaard en alle instellingen en artikelen worden opgeslagen in de database.
Je kunt op verschillende manieren een back-up maken van je website. Zelf maken we gebruik van InfiniteWP, een ontzettend handig programma waarmee je meerdere websites kunt beheren en daarnaast ook met een druk op de knop een back-up kunt laten maken van een website.
Mocht je op zoek zijn naar een gratis plugin die je kan helpen om een back-up te maken, dan kun je eens kijken naar een plugin als BackWPup.
Je zou natuurlijk ook altijd handmatig een back-up kunnen maken door alle bestanden via FTP naar je computer te halen en de database te exporteren.
Back-up terugzetten op je nieuwe domeinnaam
Om een back-up terug te zetten op je nieuwe domeinnaam hoef je eigenlijk alleen maar alle bestanden te uploaden en een database aan te maken om het .sql bestand (van je export) te importeren.
Eenmaal de back-up teruggezet op je nieuwe domeinnaam zal je tegen de volgende problemen aanlopen.
1. Je databasegegevens zijn fout. (hoeft niet)
2. De domeinnaam staat verkeerd en je kunt niet eens inloggen.
Je database gegevens zijn fout
Wanneer je een nieuwe database aanmaakt, dan maak je vaak gebruik van een andere databasenaam, gebruiker en wachtwoord. Je zal de nieuwe gegevens moeten toevoegen in het wp-config.php bestand om de website werkend te krijgen.
Het gaat om de volgende gegevens die je moet aanpassen:
De domeinnaam staat verkeerd en je kunt niet inloggen
Dit komt natuurlijk omdat we de back-up op de nieuwe domeinnaam hebben geplaatst en alles nog gericht is op de oude domeinnaam.
We zouden dit op twee manieren kunnen aanpassen. Je kunt het aanpassen in de database of je kunt het aanpassen met 2 simpele regels code die je in het functions.php bestand moet plaatsen.
Aangezien de meeste mensen liever voor de 2 optie gaan zal ik deze methode als eerste uitleggen.
Domeinnaam aanpassen via het functions.php bestand
Navigeer via FTP naar de map van het thema waar je gebruik van maakt (wp-content/themes/themamap). Je zal hier een functions.php bestand zien staan die je met een teksteditor kunt bewerken.
Eenmaal het bestand geopend kun je de volgende twee regels onder de code “<?php” toevoegen aan het bestand.
update_option( 'siteurl', 'http://jeeigendomeinnaam.nl' ); update_option( 'home', 'http://jeeigendomeinnaam.nl' );
Natuurlijk moet je “http://jeeigendomeinnaam.nl” nog wel even aanpassen, maar dit begreep je hopelijk wel. 😉
Wanneer je dit gedaan hebt kun je het bestand opslaan en weer opnieuw uploaden naar de server.
Je kunt nu de inlogpagina van je nieuwe domeinnaam proberen te bereiken. Indien dit niet in 1 keer lukt kun je nog een aantal keer refreshen, want meestal gaat het dan opeens wel goed.
Domeinnaam aanpassen via de database
Wanneer je voor deze methode gaat verwacht ik eigenlijk dat ik niet heel veel hoef uit te leggen en je al een beetje bekend bent met hoe de database werkt en hoe je dingen kunt aanpassen. Je gaat tenslotte toch aan de database zitten.
Om de URL in de database aan te passen kun je inloggen op je database via phpMyAdmin en vervolgens naar het tabel “Options” gaan. Je zal hier de kolommen “siteurl” en “home” tegenkomen waar je de URL van kunt aanpassen.
Indien je dit gedaan hebt kun je weer inloggen op de website.
Webshop tijdelijk privé zetten
Om te voorkomen dat mensen per ongeluk al op je nieuwe website terechtkomen, en wat bestellen terwijl het helemaal nog niet zeker is of alles werkt, kun je de website in eerste instantie op privé zetten.
Je kunt dit eenvoudig doen met een plugin als “My Private Site“. Eenmaal de plugin geactiveerd hoef je alleen maar naar “instellingen -> Private site” te gaan en een vinkje te zetten bij “Make private site”.
URL’s oude domeinnaam vervangen voor nieuwe domeinnaam
We kunnen nu weer inloggen op de website, maar alle links en dergelijke die we hebben aangemaakt staan verder nog wel verkeerd. Om alle links in de database aan te passen kun je een query uitvoeren, maar wat vaak makkelijker zal zijn is gewoon gebruik te maken van de plugin als “Better Search Replace“.
Het is bij deze plugin een kwestie van de oude domeinnaam invullen in het vakje “Search for” en de nieuwe domeinnaam in het vakje “Replace with”. Vervolgens moet je nog wel even alle tabellen selecteren en dan kun je alles laten vervangen door op “Run Search/Replace” te klikken en het vinkje bij “Run as dry run” weg te halen.
Vanaf nu horen alle links goed te staan op je website, maar voor de zekerheid zou ik toch altijd nog even alles nalopen om te kijken of het allemaal echt goed staat. Je kunt het beter nu controleren dan dat je straks klachten van je klanten krijgt omdat bepaalde links niet werken.
Betalingsprovider koppeling controleren
Het is afhankelijk van de betalingsprovider en plugin waar je gebruik van maakt hoe je dit moet controleren. Het komt echter regelmatig voor dat je bij je betalingsprovider de URL moet opgegeven waarvoor je de koppeling wilt gebruiken.
Indien de domeinnaam wijzigt zal je dus ook de nieuwe URL moeten toevoegen om er zeker van te zijn dat je problemen voorkomt.
Controleer dus altijd alles wat je hebt moeten instellen bij je betalingsprovider om de plugin goed werkend te krijgen en kijk of het nodig is of je dit opnieuw moet doen op de nieuwe domeinnaam.
Testbestelling plaatsen om te kijken of het goed werkt
Nadat je alle gegevens van de betaalplugin en je betalingsprovider hebt gecontroleerd is het verstandig om toch even een testbestelling uit te voeren.
Je kunt tenslotte beter precies alle stappen doorlopen die je klanten ook moeten doorlopen om te controleren of alles goed werkt, dan dat je alleen naar de instellingen kijkt in de achterkant van je website en hoopt dat het goed zal werken.
Plaats dus altijd een testbestelling indien je dingen wijzigt die te maken hebben met de betaling.
Klanten en bestellingen overzetten
Op het moment dat je een back-up maakt neem je natuurlijk alle klanten en bestellingen mee naar de nieuwe domeinnaam. Vaak is het echter zo dat er alweer nieuwe bestellingen binnenkomen op het moment dat je op de nieuwe domeinnaam aan het werkt bent.
Je klanten hoeven tenslotte niets te merken van alle werkzaamheden die plaatsvinden, maar daardoor moet jij er wel voor zorgen dat alle bestellingen ook op de nieuwe domeinnaam komen te staan.
Om dit te bereiken kun je de volgende twee plugins gebruiken:
Met de ene plugin kun je alles exporteren en met de andere alles importeren. Meer informatie over hoe je gebruik kunt maken van deze plugins kun je lezen in het artikel WooCommerce bestellingen exporteren en importeren.
Voorraad controleren
Indien alles in orde is en je voorraadbeheer hebt ingeschakeld in WooCommerce is het zaak om voor de zekerheid nog wel even te controleren of de voorraad nog steeds helemaal klopt.
Wanneer er bestellingen zijn geplaatst op de “oude” webshop, dan zijn deze natuurlijk niet automatisch van de voorraad afgegaan bij de nieuwe website. Pas dit indien nodig dus aan, zodat je later niet onverwachts in de problemen komt omdat de voorraad opeens op blijkt te zijn en in Woocommerce staat dat je er nog 6 van hoort te hebben.
Analytics URL aanpassen
Waarschijnlijk wil je gewoon doorgaan met dezelfde Google Analytics property (of andere trackingssyteem) en de gegevens die je in het verleden al hebt verzameld houden.
Dit is geen enkel probleem. Het enige wat je hoeft te doen is bij de property instellingen in Analytics even de standaard URL aan te passen. Je hoeft verder geen aanpassingen te doen aan de code waarmee de gegevens worden bijgehouden.
Note: Volgens mij is het zelfs niet eens nodig om de standaard URL aan te passen, maar voor de zekerheid is het toch altijd handig om te doen.
301 redirects in de aanslag
Voordat je live gaat met de nieuwe domeinnaam is het verstandig om te kijken welke pagina’s je allemaal moet redirecten en hier een lijstje van te maken.
Indien je alle URL’s hetzelfde hebt gelaten op de domeinnaam na, dan hoef je geen lijstje te maken en kun je eenvoudig een redirect doen dat mensen op dezelfde URL uitkomen maar dan voor de nieuwe domeinnaam.
Wat ik hiermee bedoel is het volgende. Stel je hebt een domeinnaam en de URL “http://domeinnaam.nl/shirt/” en op de nieuwe domeinnaam heb je dit niet aangepast en is de URL “http://nieuwedomeinnaam.nl/shirt/”.
Je hoeft dan in dit geval geen lijst te maken van alle pagina’s en URL’s omdat je met een simpele code alles kunt redirecten.
Mocht je de URL echter aanpassen naar http://nieuwedomeinnaam/t-shirts/, dan zal je hier wel een aparte redirect voor moeten maken. Dit soort URL’s kun je dus beter noteren.
Zorg in elk geval dat je dit allemaal weet voordat je overgaat, dan weet je straks zeker dat je alles goed doorstuurt.
Live gaan op de nieuwe domeinnaam
Bekijk voor de zekerheid voor de laatste keer nog even of alles goed staat en dat alle bestellingen in het systeem staan. Indien alles goed is kun je de de plugin uitschakelen waarmee je je website achter slot en grendel hebt verborgen.
Gefeliciteerd, je hebt succesvol je website naar een andere domeinnaam verplaatst en kunt er vol tegenaan. 🙂
Het enige wat je nog moet doen is 301 redirects plaatsen op je oude domeinnaam om ervoor te zorgen dat bezoekers alleen nog maar op de nieuwe domeinnaam terechtkomen. Google weet op deze manier ook meteen waar je website is gebleven en zal langzaam de nieuwe domeinnaam vervangen voor de oude domeinnaam in de zoekresultaten.
301 redirects instellen op oude domeinnaam
Als het goed is blijven alle URL’s hetzelfde en is alleen de domeinnaam anders. Mocht dit niet zo zijn, dan heb je nu vast een lijst met alle URL’s die anders moeten.
Wanneer alleen de domeinnaam anders hoeft in de URL kun je in het .htaccess bestand van je website de volgende code plaatsen:
RewriteEngine on
RewriteRule ^(.*)$ http://nieuwedomeinnaam.nl/$1 [R=301,L]
Uiteraard wel weer even de domeinnaam vervangen.
Wil je verder ook nog losse URL’s aanpassen, dan kun je redirects aanmaken als volgt te werk gaan in het .htaccess bestand.
Redirect 301 /shirts/ http://nieuwedomeinnaam.nl/t-shirts/
Eenmaal de redirects aangemaakt is het wederom even zaak om alles goed te controleren en dan heb je echt alle punten gehad die je moest hebben. Goed gedaan!