How to

Zo verhuis je een WordPress-website veilig naar een nieuw domein

0

Onlangs heb ik mijn WordPress-website verhuisd naar een andere domeinnaam. Omdat WordPress één van de meest gangbare contentmanagement-systemen ter wereld is, vind je doorgaans gemakkelijk een handleiding over hoe je bepaalde zaken het beste aan kunt pakken. Tijdens mijn migratie ben ik wel veel handige artikelen tegengekomen, maar vaak ontbraken er nog stukjes van de puzzel. Vandaar dit artikel, waarin ik alle informatie heb gebundeld.

Disclaimer: een websitemigratie is altijd een foutgevoelig proces. Kleine foutjes kunnen een desastreuze impact hebben op de vindbaarheid van je website. Zelfs een foutloze migratie gaat doorgaans gepaard met terugval in rankings en organisch zoekverkeer. Ook de overgang van mijn website heeft geleid tot een tijdelijke dip in organisch zoekverkeer. Mocht je bedrijf/inkomen afhankelijk zijn van je website, dan is het aan te raden om de migratie onder begeleiding van een professional te doen.

 

Ik heb mijn website verhuisd van de suboptimale domeinnaam https://thingtodoin.amsterdam naar https://thingstodoinamsterdam.com. De manier die ik in dit artikel toelicht, is een van de veiligste manieren om je website te verhuizen. Je hebt namelijk een back-up achter de hand. En de daadwerkelijke migratie kun je uitvoeren op het moment dat je zeker weet dat alles goed staat.

Tools

Ik heb de volgende tools gebruikt bij de migratie:

  • Google Search Console: via Search Console kun je niet alleen de verhuizing van het domein doorgeven, maar ook veel inzichten krijgen over de rankings, indexeringsstatus en (crawl)fouten. Zorg dat je volledige rechten hebt als je aan de migratie begint.
  • Google Analytics: via Google Analytics heb je uiteraard inzicht in het verkeer van de website. Voor, na en gedurende de migratie.
  • Screaming Frog: Screaming Frog is een krachtige SEO-tool om websites te crawlen. Je krijgt hiermee snel inzicht in interne links, statuscodes en de belangrijkste SEO-elementen, zoals: canonicals, index/noindex-tags, meta-data en meer.
  • Ahrefs: een export van alle links naar het oude domein. Je kunt hiervoor bijvoorbeeld ook MOZ, Majestic of de gratis openlinkprofiler gebruiken.
  • FileZilla FTP: gratis ftp-programma waarmee je eenvoudig alle bestanden van de oude server naar de nieuwe server kopieert.
  • Open Office: gratis tegenhanger van Microsoft Excel, gebruikt voor CSV-imports naar phpMyAdmin.

Stap 1. Verifieer het nieuwe domein & maak een data-set

Een van de belangrijkste tools die Google Webmasters biedt om inzichten te krijgen in organisch zoekverkeer, indexering en eventuele fouten, is Google Search Console. Meten is weten! Je eerste stap is dus om ervoor zorgen dat je beschikt over alle denkbare data.

1. Verifieer in Google Search Console je nieuwe domein

Kies daarvoor één van de volgende methoden:

  • Het html-verificatiebestand
    • Download het html-verificatiebestand.
    • Maak verbinding met de ftp-server van het hostingpakket, gekoppeld aan het nieuwe domein.
    • Upload het html-verificatiebestand naar de /public_html/ folder of de /www/ folder (afhankelijk van je hosting-partij).
  • Aanmelden bij domeinnaam provider
    • Log in via het pop-upvenster en verleen Google Search Console het recht om via DNS te verifiëren.
Google Search console property toevoegen

Google Search Console property toevoegen

Google Search console property toevoegen

Verifiëren met verificatiebestand.

Google Search console property verifieren - alternatieve methoden

Alternatieve vericatie-methoden

2. Herhaal dit voor alle varianten van je domein

Voor Google Search Console zijn de https://, https://, www en non-www verschillende domeinen. Herhaal deze handeling daarom voor alle varianten van je domein, zodat je alle mogelijke varianten hebt geverifieerd:

  • https://nieuwdomein.nl
  • https://nieuwdomein.nl
  • https://www.nieuwdomein.nl
  • https://www.nieuwdomein.nl

3. Oude domein

Zorg dat je ook van het oude domein alle varianten hebt geverifieerd.

4. Data-set aanmaken

Maak daarna een set aan, waarin je de data van alle 8 varianten combineert.

Google Search console set maken

Google Search Console: set maken

Stap 1.1 Bing Webmaster Tools verifiëren

Google is dan wel de grootste zoekmachine (by far), het is niet de enige. Yahoo en Bing zijn voor sommige websites samen ook goed voor 10 tot 15% van het zoekverkeer. Dat verkeer willen we zeker niet verliezen. Zorg daarom dat je oude en nieuwe domein ook in Bing Webmaster Tools zijn geverifieerd.

Hiervoor hoeven minder handelingen verricht te worden, omdat je binnen Bing maar 1 variant van ieder domein hoeft te verifiëren. Je verifieert vanzelfsprekend je voorkeursdomein. De verschillende verificatie-methoden zijn gelijk aan die van Google.

Stap 2. Maak een document voor url-migratie

Het migratiedocument is van essentieel belang voor een verhuizing met zo min mogelijk verlies van organisch zoekverkeer en rankings. Het is belangrijk dat alle pagina’s 1-op-1 worden geredirect en je bijvoorbeeld niet alles naar de homepage van het nieuwe domein verwijst. Voor het redirecten moet gebruik worden gemaakt van 301 (permanente) redirects.

2.1 Url’s uit Google Analytics exporteren

Google Analytics biedt de basis voor je migratiebestand. Het belangrijkste voordeel van de data uit Google Analytics ten opzichte van de andere bronnen, is dat de data (als het goed is) ver in de tijd teruggaat. Dat betekent dat ook oude url’s terugkomen in de data. Deze url’s zou je met een crawl of met data uit Google Search Console over het hoofd zien.

Onderneem de volgende stappen:

  1. Log in bij Google Analytics.
  2. Klik op ‘Behaviour’ > ‘Site content’ > ‘All pages’.
  3. Selecteer een zo groot mogelijke time range.
  4. Selecteer onder de data-tabel het maximale aantal rijen (5000). Als er meerdere pagina’s zijn, moet je meerdere exports maken en samenvoegen.
  5. Schoon vervolgens de data op. Gebruik Excel-filterfuncties om je export op te schonen. Weet je bijvoorbeeld dat parameter url’s voor SEO onbelangrijk zijn? Dan kun je filteren op “=”. Een andere efficiënte manier is door te filteren op het aantal sessies of op een bepaalde subfolder.
aantal rijen analytics

Aantal rijen in het Google Analytics-rapport aanpassen

Google Analytics exporteren

Google Analytics-rapport exporteren

Google Analytics export opschonen

Google Analytics-export opschonen

Let op: als je tussentijds een nieuw Analytics-profiel bent gaan gebruiken, zorg dat je dan ook de data uit je vorige profiel exporteert.

Tip: Is er onvoldoende tijd om alle url’s 1-op-1 te redirecten? Ga ga naar ‘Acquisition’ > ‘All Traffic’ > ‘Channels’. Klik op ‘Organic Search‘ en selecteer onder de gegevens-grafiek op ‘Landing Page’ als primary dimension. Als je de lijst vervolgens op sessies sorteert, kun je de url’s met het meeste verkeer 1-op-1 redirecten.

2.2 Search Console crawl errors herstellen

De verhuizing van een website is net als een normale verhuizing: het is een uitstekend moment om door de jaren opgebouwde ‘rommel’ op te ruimen. Zo kun je met een schone lei beginnen. Google Search Console houdt netjes alle crawl errors bij, die je direct kunt herstellen bij de migratie.

Dit doe je als volgt:

  1. Log in bij Google Search Console.
  2. Ga naar het dashboard van het oude property.
  3. Klik op ‘Crawlen’ en vervolgens op ‘Crawlfouten’.
  4. In het tabblad ‘Niet gevonden’ vind je de 404-error pages van je website.
  5. Klik op downloaden.
Google Search Console crawl errors

Google Search Console crawl errors

2.3 Crawl de website

Om alle live url’s boven water te krijgen, kun je het beste een crawling tool als Screaming Frog gebruiken. Deze software volgt alle links op een website zoals een zoekmachine dat zou doen.

  1. Vink bij instellen van de crawl via ‘Configuration’ > ‘Spider’ de volgende opties uit:
    • ‘Check images’
    • ‘Check CSS’
    • ‘Check SWF’
    • ‘Check external links’
  2. Bepaal of nofollow-links gerespecteerd moeten worden, of juist niet.
  3. Bepaal in het tabje ‘Advanced’ of meta robots gerespecteerd moet worden.
  4. Vink ‘Always follow redirects’ aan om redirect chains mee te nemen.
  5. Stel via ‘Configuration’ > ‘Robots.txt’ > ‘Settings’ in of uitgesloten url’s terug moeten komen in de crawl.

Tip: als er geen recente aanpassingen zijn geweest aan het robots.txt bestand of pagina’s met noindex, dan hoeven deze pagina’s niet geredirect te worden, omdat ze niet zijn geïndexeerd.

Zodra Screaming Frog de website heeft doorzocht, doe je het volgende:

  1. Klik onder ‘Internal’ op ‘HTML’.
  2. Voeg het tabblad met alle interne url’s toe aan de eerdere export uit Analytics.

2.4 Backlink export maken

Links zijn nog altijd een zeer belangrijk signaal voor de ranking van je site. Daarom wil je voorkomen dat je url’s vergeet te redirecten die backlinks ontvangen. Als het een oude link is, kan het voorkomen dat de url niet voorkomt in je eerdere exports. Maak daarom een export van alle backlinks via een tool als Ahrefs, Moz of Majestic.

Onderneem de volgende stappen:

  1. Exporteer alle backlinks, zorg dat je de url’s exporteert waar de link naar toe staat, niet waar ze na redirect op uitkomen.
  2. Exporteer niet alleen ‘live’ links, maar ook zeker alle broken backlinks: links die op een 404-pagina uitkomen.
  3. Kopieer het totaal aan url’s naar een tabblad in je migratiedocument.

2.5 Url’s samenvoegen en redirects bepalen

Om dubbel werk te voorkomen, zorg je ervoor dat redirects van url-varianten automatisch worden afgevangen. Houd dus rekening met https:// https://, www non-www en de trailing slash (/). Elk van de volgende varianten is in feite een andere url voor zoekmachines. Zorg ervoor dat dit wordt afgevangen:

  1. https://thingtodoin.amsterdam(/)
  2. https://thingtodoin.amsterdam(/)
  3. https://www.thingtodoin.amsterdam(/)
  4. https://www.thingtodoin.amsterdam(/)

In je migratiedocument wil je dat alle url’s hetzelfde formaat hebben. Anders verricht je dubbel werk. Bij voorkeur zoals je Analytics-export, met alleen het url path, alles dat na het toplevel domain (.com/.nl) komt.

Omdat je Analytics-export al in het juiste formaat staat, hoef je alleen de andere exports in dit formaat te zetten. Doe dit als volgt:

  1. Voeg een extra kolom in naast je originele exports van url’s.
  2. Kopieer alle url’s naar deze kolom.
  3. Selecteer de kolom met kopieën en druk op CTRL+H.
  4. Voer bij ‘Zoeken naar’ de eerste variant van je domein in. Bij ‘Vervangen’ vul je niks in.
  5. Herhaal deze handeling voor de vier verschillende varianten.

Zodra je alle url’s in hetzelfde formaat hebt, maak je een totaal tabblad aan en kopieer je hier alle url’s van de verschillende exports onder elkaar. Vervolgens kun je met de functie ‘Duplicaten verwijderen’ het bestand ontdubbelen. Wat je overhoudt, is een lijst met alle url’s waarvoor een redirect moet komen.

In deze voorbeeldcase is het vinden van de nieuwe url eenvoudig: de url-structuur is hetzelfde gebleven. Als pagina’s veranderen of komen te vervallen, of de structuur wijzigt, zorg dan altijd dat de redirect naar de meest relevante nieuwe url verwijst. Houd daarbij rekening met de zoekwoorden.

3. WordPress-installatie kopiëren naar een nieuw hostingpakket

Het belangrijke voorwerk is nu gedaan. Nu is het tijd om een duplicaat van je website live te zetten op het nieuwe hostingpakket.

Let op: aanpassingen die vanaf dit moment gedaan worden aan de ‘oude website’, gaan niet meer mee naar de nieuwe website. Begin dus pas aan deze stap als je geen belangrijke veranderingen doorvoert op de oude installatie.

3.1 Websitebestanden downloaden

Eerst is het zaak om te zorgen dat alle bestanden voor je website beschikbaar zijn op de nieuwe server. Deze bestanden kun je met behulp van een ftp-programma naar de server kopiëren. Een ftp-programma kun je zien als een bestandsverkenner, met als extra dat ook bestanden op een externe server beheerd kunnen worden.

Doorloop de volgende stappen om je website naar het nieuwe hostingpakket te verhuizen:

  1. Maak verbinding via ftp met de oude ftp-server. Voor meer uitleg over de bestandsoverdracht via ftp of inloggegevens, kun je bij je hostingpartij terecht.
  2. Maak een map aan op je computer, waar je de bestanden opslaat.
  3. Download alle bestanden in de public_html of www-folder naar de map die je zojuist hebt aangemaakt. Het downloaden kan, afhankelijk van de omvang van de website, een half uur tot vele uren duren.
Website bestanden downloaden m.b.v. FTP

Websitebestanden downloaden met ftp

3.2 Database vanuit oude hosting exporteren

Terwijl je ftp-programma de benodigde files downloadt naar je computer, kun je verder met het inrichten van de onmisbare SQL-database. Zonder de SQL-database zijn de files die je uploadt onbruikbaar.

Onderneem de volgende stappen:

  1. Log in via phpMyAdmin (of andere beheeromgeving) van je oude server.
  2. Selecteer de database die bij je WordPress-installatie hoort.
  3. Klik nu op het tabblad ‘Export’ en zorg ervoor dat de database in SQL-formaat wordt geëxporteerd.
  4. Heb je een kleine website? Dan kun je het beste ‘Quick’ als export-methode kiezen. Weet je niet in welke categorie je website valt? Klik dan op ‘Quick export’. Is het bestand groter dan 32MB? Volg dan de onderstaande stappen:
    1. Als het om een grotere website met grote database gaat, dan kun je het beste ‘Custom’ kiezen, zodat je compressie kunt inschakelen.
    2. Zorg bij een custom export dat alle (gewenste) tabellen zijn geselecteerd.
    3. Selecteer bij ‘Compression’ ‘zipped’ voor lichte compressie of ‘gzipped’ voor zware compressie.
phpMyAdmin database exporteren

phpMyAdmin database exporteren

3.3 Websitebestanden uploaden

Met deze stap kun je pas aan de slag op het moment dat de download van stap 3.1 gereed is. Is dat nog niet het geval? Ga dan door naar stap 3.4 en begin daarna met deze stap.

Je gaat nu de websitebestanden uploaden naar de nieuwe server:

  1. Maak verbinding met de ftp-server van de nieuwe hostingomgeving.
  2. Zoek en open de map public_html of www.
  3. Als hier de bestanden index.php, index.html of .htaccess in staan, dan geef je deze een nieuwe bestandsnaam. Bijvoorbeeld door ‘-oud’ aan de bestandsnaam toe te voegen.
  4. Sleep de eerder gedownloade websitebestanden naar deze map. Je computer zal nu de bestanden gaan uploaden. Ook dit kan tot enkele uren in beslag nemen.

3.4 Database importeren

Op de nieuwe hosting wil je de database importeren, die je eerder hebt geëxporteerd. Dat doe je als volgt:

  1. Log in bij de beheeromgeving van je nieuwe hosting.
  2. Maak een nieuwe database aan. Kopieer de naam van de database, gebruiksnaam en het wachtwoord in bijvoorbeeld Notepad. Zorg ervoor dat het wachtwoord een sterk wachtwoord is met leestekens, hoofdletters, kleine letters en getallen.
  3. Log in via phpMyAdmin of andere databasebeheer-software.
  4. Klik op ‘Import’ en selecteer de eerder gedownloade SQL-export.
  5. In de geïmporteerde database moet je nu de websitegegevens aanpassen om te zorgen dat de websitenaam en automatisch gegenereerde links (bijvoorbeeld in het menu), naar de juiste url verwijzen. Klik hiervoor op de tabel wp_options.
  6. Pas in de velden ‘siteurl’, ‘home’ en ‘blogname’ de nieuwe gewenste naam/url van het blog in en sla deze op.
    Let op: voer hier je voorkeurs-url in. Houd dus rekening met https/http en www/non-www, anders zullen interne links via redirects verlopen, wat niet bevorderlijk werkt voor SEO en UX.
Importeren database phpMyAdmin

Importeren database phpMyAdmin

siteurl aanpassen in database

Url aanpassen in database WordPress

3.5 De nieuwe database koppelen aan WordPress

Nu de benodigde bestanden en database zijn geïmporteerd op de nieuwe server, moet je de twee nog aan elkaar koppelen. Dit doe je met behulp van het bestand wp-config.php. Dit bestand vind je tussen de bestanden op je nieuwe server.

Ga als volgt te werk:

  1. Maak verbinding met de nieuwe ftp-server. (Let hierbij goed op: als je de het wp-config-bestand op de oude server aanpast, dan zal website niet langer werken!)
  2. Download het wp-config.php-bestand uit de public_html of www-map.
  3. Open het bestand met Notepad.
  4. Plak tussen de aanhalingstekens achter DB_NAME de naam van je nieuwe database.
  5. Plak tussen de aanhalingstekens achter DB_USER de gebruiksnaam voor de nieuwe database.
  6. Plak tussen de aanhalingstekens achter DB_PASSWORD het wachtwoord voor de nieuwe database.
  7. Sla het bestand op.
  8. Upload het bestand naar de map public_html of www van de nieuwe server.
  9. Het ftp-programma vraagt nu of je het bestaande wp-config.php-bestand wil overschrijven. Klik op ‘Ja’.
Database koppelen wp-config

Database koppelen in het wp-config-bestand

3.6 Het duplicaat van de website op noindex zetten

Als alles goed is gegaan, is nu je duplicaat-website live. Omdat we weten dat zoekmachines niet van duplicate content houden, moet je voorkomen dat bots je duplicaat gaan crawlen en indexeren. Dit doe je als volgt:

  1. Log in met je bestaande gebruiksgegevens op het backend van je duplicaat via: www.nieuwdomein.nl/wp-admin (of andere url, als je de url van wp-admin hebt gewijzigd).
  2. Klik op ‘Settings’ en vervolgens op ‘Reading’.
  3. Vink achter ‘Search Engine Visibility’ het selectievakje ‘Discourage search engines from indexing this site’ aan. Dit activeert de noindex-tag sitewide
  4. Druk op ‘Save changes’ en leeg eventueel je cache.
WordPress op noindex zetten

WordPress op noindex zetten

4. Interne links aanpassen

Je hebt door bij stap 3.4 de website-url in je database aan te passen, alle automatisch gegenereerde links omgezet naar het nieuwe domein. Automatisch gegenereerde links zijn alle links uit je menu en bijvoorbeeld op je categoriepagina’s. Alle links die je echter in de content hebt staan, zijn niet aangepast en gaan nog naar het oude domein. Dat zou betekenen dat alle links via redirects lopen. Omdat die situatie niet wenselijk is voor SEO, moet je deze links aanpassen.

Dit aanpassen zou in theorie kunnen door alle posts en pages te openen, en hierin de url handmatig aan te passen. Je begrijpt wel dat dit veel kostbare tijd kost. Daarom hier een werkwijze die tot enkele dagen bespaart:

  1. Klik op ‘Tools’ en vervolgens op ‘Export’.
  2. Selecteer ‘All content’.
  3. Alle pagina’s en posts worden nu als .xml gedownload.
  4. Open je export met behulp van Notepad.
  5. Nu wil je alle oude verwijzingen naar het oude domein in één klap vervangen met het nieuwe domein, voor zowel interne links, afbeeldingen als de domeinnaam in metadata. Dit kan eenvoudig met ‘Zoeken en vervangen’. Klik hiervoor op CTRL+H.
  6. In het venster dat opent, typ je bij ‘Zoeken naar’ je root domain in. Dus zonder http/https/www en alles na het top level domain. Dus in deze case is dat ‘thingtodoin.amsterdam’.
  7. Bij ‘Vervangen door’ vul je het nieuwe root domain in, dus zonder http/https/www en alles na het top level domain. Dus in deze case ‘thingstodoinamsterdam.com’.
  8. Klik op ‘Alles vervangen’ en check onder in beeld of een realistisch aantal woorden is vervangen. Het is goed om het bestand nog even ter controle na te kijken. Je zou het oude domein niet meer aan mogen treffen in het bestand.
  9. Sla de export op.
  10. Verwijder nu alle pagina’s en posts uit in het WordPress-duplicaat.
  11. Verwijder ook alles dat in de vuilnisbak staat.
  12. Wanneer alles is verwijderd, kun je de aangepast pagina’s en posts importeren, door op ‘Settings’ en vervolgens ‘Import’ te klikken.
  13. WordPress zal je nu vragen om de plugin WordPress Importer te installeren. Installeer deze plugin.
  14. Importeer het bestand waarin de url’s zijn aangepast.
  15. Doordat alle pagina’s zijn verwijderd, zal je onder ‘Appearance’ en vervolgens ‘Menus’ opnieuw je navigatie-menu’s aan moeten maken. Zorg dat deze dezelfde links bevat als op de oude site. Omdat dit sitewide links zijn, wil je dit niet tijdens een migratie veranderen. (Eventueel kunnen menu’s ook worden geëxporteerd met behulp van een plugin)
  16. Het resultaat dat je nu hebt, is een kopie van de oude website, maar dan op noindex en met alle url’s aangepast.
Wordpress export in notepad ++

WordPress export in Notepad ++

zoeken en vervangen

Zoeken en vervangen (CTRL+H)

5. Je duplicaat website testen

Tot dusver heb je voor zoekmachines geen enkele aanpassing gemaakt. Het enige dat je hebt gedaan, is een kopie van je website live zetten die wordt geblokkeerd van indexatie via meta-robots noindex.

Nu kun je met Screaming Frog eventuele onvolkomenheden opsporen:

  1. Zet ‘Mode’ op ‘Spider’. Voer je nieuwe domeinnaam in.
  2. Controleer onder ‘Configuration’ en vervolgens ‘Spider’ de volgende instellingen:
    a. Basic: ‘Check external links’ aan, ‘Follow internal nofollow’ aan, ‘Follow external nofollow’ aan
    b.
    Advanced: ‘Always follow redirects’ aan, ‘Respect noindex’ uit.
  3. Klik op ‘Configuration’ en op ‘Speed’. Afhankelijk van de snelheid van je server, is het verstandig om de crawl te beperken tot ongeveer 2-5 url’s per seconde.
  4. Klik op ‘Start’.
  5. Terwijl je crawl bezig is, kun je de duplicaat website doorklikken. Werkt alles? Zijn afbeeldingen zichtbaar? Werken formulieren? Etcetera.
  6. Controleer je sitemap: kloppen de url’s die erin staan? Zijn dit de nieuwe url’s?
  7. Controleer als je crawl klaar is, het resultaat van je duplicaat:
    a. Kijk naar ‘Response codes’. Als alles goed is gegaan, dan lopen je interne links niet via 301 url’s, maar komen ze direct uit op de doelpagina.
    b. Hoe zit het met de 404-pagina’s? Als het goed is, zijn er geen 404-errors bijgekomen.
    c. Kloppen de directives? Verwijst de canonical naar de voorkeurs-url?
    d. Bevatten je pagina’s H1’s, H2’s, paginatitels en meta-descriptions?

Wees met deze analyse uitvoerig. Zorg dat je alles hebt gecheckt. Dit is de laatste test voordat de daadwerkelijke migratie gaat beginnen. Als je zeker bent dat alles goed staat, kun je door naar de volgende stap.

6. De daadwerkelijke migratie

Het duplicaat van de website staat nu live en is getest. In Google Search Console heb je een dataset die je van de nodige informatie over de migratie kan voorzien. Met het activeren van de eerder in kaart gebrachte redirects zal de migratie in gang worden gezet. Ga hierbij als volgt te werk:

 

 

  1. Log in op het duplicaat van je website.
  2. Klik op ‘Settings’ en vervolgens op ‘Reading’.
  3. Vink achter ‘Search Engine Visibility’ het selectievakje ‘Discourage search engines from indexing this site’ uit. Dit verwijderd de sitewide noindex tag.

Redirects activeren

De redirects activeer je met behulp van een redirect plugin of met behulp van het .htaccess-bestand. Redirecten met behulp van het .htaccess-bestand heeft als voordeel dat het efficiënter werkt, doordat er met regels gewerkt kan worden in plaats van redirects 1-op-1 in te voeren. Bovendien verkort het de reactietijd van de server. Het gebruik van .htaccess is voornamelijk aan te bevelen bij grotere WordPress-sites, waarbij meer dan 500 url’s geredirect moeten worden. Het nadeel van werken met .htaccess is dat het minder flexibel is: aanpassingen achteraf gaan lastiger, specialistische kennis is vereist en je kunt niet meer bij je oude back-end.

Omdat mijn website een relatief kleine website is, heb ik de keuze gemaakt om te redirecten met behulp van een plugin. Hiervoor heb ik de plugin SEO Redirection gebruikt. Een zeer eenvoudige, maar doeltreffende plugin die ik ook al vóór de migratie gebruikte voor redirects.

Invoeren van je redirect-lijst

Het invoeren van je redirect-lijst gaat het eenvoudigst via de database. Als je dat niet prettig vindt, kan het eventueel ook door ze stuk voor stuk in te voeren via het WordPress-backend.

Onderneem de volgende stappen:

  1. Installeer de SEO Redirection plugin.
  2. Voer een willekeurig een test redirect in om de werking van de plugin te testen en zodat je straks in de database-export een voorbeeld hebt.
  3. Log in op de database-omgeving van je oude server.
  4. Klik op de tabel ‘wp_WP_SEO_Redirection’. Klik vervolgens op ‘Export’.
  5. Klik bij export method op ‘Custom’ en kies bij format ‘OpenDocument Spreadsheet’.
  6. Bij ‘Format specific options’ heb ik de optie ‘Put columns names in the first row’ geselecteerd, zodat je kunt zien wat de waarde betekent die je invoert.
  7. Bekijk de output file en je zult zien dat er maar een aantal kolommen toe doen:
    1. a. ID: dit is een unieke oplopende waarde, die per redirect optelt.
      b. Enabled: met de waarde ‘1’ betekent het dat de redirect actief is.
    2. c. redirect_from: het url-path, dus de oude url vanaf het toplevel domain (.com/.nl).
    3. d. redirect_to: de nieuwe url compleet.
    4. e. redirect_type: altijd ingesteld op 301, omdat het een permanente verhuizing is.
  8. Zorg dat je ID dus oploopt en geen dubbele waarde bevat.
  9. Voer in de kolom ‘redirect_from’ alle url’s in die je wil migreren.
  10. Voer in de kolom ‘redirect_to’ alle nieuwe url’s staan
  11. Verwijder de eerste rij met daarin de waarden.
  12. Sla het bestand op als .csv-bestand.
  13. Klik nu op ’Import’ en selecteer bij format ‘CSV’. Vind vervolgens het zojuist opgeslagen csv-bestand.
  14. Controleer de instellingen (zoals hieronder afgebeeld) en start de import.

Gefeliciteerd! De redirects zijn nu geactiveerd en de migratie is nu feitelijk voltooid.

redirect import file

Redirect import file

import geslaagd

Import geslaagd

Na het schrijven van dit blog heb ik een plugin gevonden die een .csv import ondersteunt, waardoor deze upload niet via de database uitgevoerd hoeft te worden. Deze plugin heet: Safe Redirect Manager.

6.1 Controleren van de migratie

Voordat we de vlag uithangen, is het belangrijk om de migratie nog eens goed na te lopen. Hiervoor komt opnieuw de crawling tool Screaming Frog van pas.

      1. Open Screaming Frog en zet de tool bij ‘Mode’ op ‘List’.
      2. Klik vervolgens op ‘Configuration’ > ‘Spider’ en vink op het tabblad ‘Advanced’ de optie ‘Always follow redirects’ aan.
      3. Zorg nu dat je de redirect-lijst met enkel url-paths weer omzet naar complete url’s. Dus bijvoorbeeld /museum-amsterdam/ wordt weer https://thingtodoin.amsterdam/museum-amsterdam/.
      4. Voer de complete redirect-lijst in via ‘Upload’ en vervolgens ‘Enter manually…’
      5. Start de crawl.

Als de crawl klaar is kijken, kunnen we bekijken of alles goed is gegaan. Let vooral op de volgende zaken:

  • Staan canonicals naar het nieuwe domein? En naar de voorkeursvariant van de url?
  • Komen de redirects uit op de juiste pagina?
  • Komen de redirects niet uit op 404-pagina’s?
  • Staan de doelpagina’s niet op noindex?
  • Wordt er wel gebruik gemaakt van permanente 301-redirects en niet van tijdelijke 302-redirects?
  • Controleer of er geen redirects worden veroorzaakt, doordat er naar https:// wordt gelinkt in plaats van naar https://.
  • Klik op ‘Reports’ en vervolgens op ‘Redirect chains’. Je krijgt nu een overzicht van elkaar opvolgende redirects. Probeer redirects weg te halen door direct naar de bestemmingspagina te redirecten.
  • Heb je een meertalige website? Bekijk dan ook de hreflang tags. Verwijzen ze naar het nieuwe domein?

Heb je alle bovenstaande zaken gecontroleerd en is alles in orde? Ga dan verder naar de volgende stap. Zijn er nog onvolkomenheden? Herstel deze dan eerst.

6.2 De migratie doorgeven in Google Search Console en Bing Webmaster Tools

Nu je zeker weet dat de migratie in orde is, is het tijd om de verhuizing door te geven in Google Search Console en Bing Webmaster Tools. Dit doe je als volgt:

  1. Log in in Google Search Console met het account dat eigenaarsrechten over de property’s heeft.
  2. Selecteer van het oude domein de voorkeurs-url.
  3. Klik rechtsboven in beeld op het tandwiel en vervolgens op ‘Adreswijziging’.
  4. Selecteer bij stap 1 van het nieuwe domein de voorkeurs-url.
  5. Laat bij stap 2 de 301-redirects controleren.
  6. Laat bij stap 3 de verificatie van de property’s controleren.
  7. Verzend bij stap 4 het adreswijzigingsverzoek.
  8. Ga nu naar het dashboard van je nieuwe domein, dat kan eenvoudig vanuit het menu links van het tandwiel.
  9. Klik links in het menu op ‘crawlen’ en vervolgens op ‘Sitemaps’.
  10. Klik rechtsboven in beeld op de rode knop ‘Sitemap toevoegen’.
  11. Voeg de sitemap van je nieuwe website toe en dien deze in.
  12. Als je Google Search Console gekoppeld hebt aan je Google Analytics-account, moet je nu het nieuwe property koppelen. Log hiervoor in bij Analytics.
  13. Klik op het tandwiel links onderin beeld.
  14. Onder de kolom ‘Property’ vind je een kopje ‘Product linking’. Klik daar op ‘All products’.
  15. Klik onder het kopje ‘Search Console’ op ‘Adjust Link’.
  16. Selecteer het voorkeursdomein van je nieuwe property om deze aan het Analytics-account te linken.
Google Search Console adreswijziging doorgeven

Google Search Console domeinverhuizing doorgeven

Dat was het voor de Google-producten. Nu kun je de adreswijziging in Bing Webmaster Tools doorgeven en de nieuwe sitemap toevoegen.

7. Na de migratie

Houd in de periode na de migratie Google Search Console en Bing Webmaster Tools goed in de gaten. Mochten er meldingen van fouten komen, zorg dan dat je deze snel te kunt herstellen. Het is gebruikelijk om na een migratie een dip in het verkeer te zien, dus raak niet te snel in paniek, maar houd wel vinger aan de pols.

Verder is het volgende belangrijk:

  • Als je gebruik maakt van SEO redirections, dan is het verstandig om op de oude WordPress-installatie alle plugins die niet meer worden gebruikt, uit te schakelen. Zo minimaliseer je de reactietijd van de server.
  • Laat in het oude Google Search Console property minimaal 6 maanden de oude sitemaps staan, zodat zoekmachines gemakkelijk hun weg kunnen vinden naar de nieuwe url’s. Je kunt deze ook opnieuw indienen om het crawlen te bespoedigen.
  • Blijf in Google Search Console beide properties monitoren om eventuele crawlfouten of vergeten url’s te kunnen signaleren. Het oude property zou in de loop van 1 a 2 weken alle vertoningen en klikken moeten verliezen. In het nieuwe property moeten deze juist oplopen.

Houd ook altijd het oude domein en redirects naar het nieuwe domein in de lucht.

Vragen?

Ik ben benieuwd of je met dit stappenplan aan de slag kunt met je eigen websitemigratie. Heb je vragen, opmerkingen of aanvullingen? Laat het me weten via de reactiemogelijkheid hieronder.