Zoeken en vervangen WordPress database

8 min. leestijd

Zoeken en vervangen in een WordPress database

Er zijn verschillende redenen mogelijk waarom je moet zoeken en vervangen in een WordPress database. De belangrijkste reden is dat er iets gewijzigd is in de interne linkstructuur van je website. Dit kan ontstaan door:

  1. Het verhuizen van je website vanaf een ander domein
  2. Het verhuizen van je website vanaf een subdomein
  3. Het verhuizen van je website vanuit een subfolder naar de root van je mappenstructuur

Je hebt voor de verhuizing alle bestanden op je FTP server verhuisd en vervolgens ook de database geëxporteerd vanaf de oude locatie en geïmporteerd op de nieuwe locatie. Vervolgens ga je naar je website maar je krijgt al direct een foutmelding. Hoe kan dit?

De database is de basis van je WordPress website. Hierin worden alle links en koppelingen opgeslagen die ervoor zorgen dat de website eruit ziet zoals je dit instelt. Maar dit werkt dus niet meer als je website url gewijzigd is. Hoe los je dit op? Je moet dus alle url’s in je database vervangen.

Stel, je hebt de website gebouwd in een subfolder zodat je huidige WordPress website nog live bleef tot de nieuwe website klaar was. Nu staan er in je database dus diverse verwijzingen naar http://jewebsite.nl/subfolder. En daar zit dus het probleem! Je afbeeldingen zijn niet meer te vinden in de /subfolder maar in de root van je FTP, /. Ditzelfde verhaal geldt dus voor het verhuizen vanaf een ander domein. Je website is niet meer te vinden op http://jeoudewebsite.nl maar op http://jenieuwewebsite.nl. Je zult alle verouderde verwijzingen in je database dus moeten zoeken en vervangen voor de juiste url’s.

Controleren van je database

Hoe kom je er achter wat er dan ingesteld staat in je database? Als het goed is heb je via de provider toegang tot phpmyadmin. Dit is het beheersysteem van je database. De inloggegevens kun je terugvinden in de mails die je van je provider gekregen hebt bij het afsluiten van een contract of in het control panel van de provider.

PhpmyadminAls je ingelogd bent in phpmyadmin, ga je naar de wp_options. WP_ is de standaard prefix van WordPress, hopelijk is deze bij jou gewijzigd. Dit is namelijk een groot veiligheidsrisico. Wil je weten hoe je dit eenvoudig kunt wijzigen, neem dan gerust contact met mij op.

In de options tabel zie je de siteurl en home staan. Waarschijnlijk staat hier de waarde achter van je oude locatie. Die moet dus gewijzigd worden.

Dit is de meest voor de hand liggende locatie om te controleren maar er zullen door de hele database verwijzingen aanwezig zijn naar de oude locatie die opgezocht en vervangen moeten worden.

Je zou de hele database door kunnen bladeren en handmatig alles wijzigen. Maar gelukkig is dat niet nodig. Er zijn diverse tools voor geschreven, wij maken altijd gebruik van de tool Search-Replace-DB. Deze gaat volledig buiten WordPress om en hiermee behalen we absoluut de beste resultaten.

Search Replace DB Tool

De tool is te downloaden vanaf https://interconnectit.com/products/search-and-replace-for-wordpress-databases/. Het is, zoals de makers het zelf omschrijven, een database search en replace script in PHP. Ok, je hebt de zip gedownload, maar wat dan?FTP root database WordPress

  1. Pak het zip bestand lokaal uit op je pc of mac
  2. Search-Replace-DB-master is de naam van de map. Verander deze direct in search om het jezelf later gemakkelijker te maken
  3. Upload de hele map met een FTP programma zoals bijvoorbeeld Filezilla naar de root van je server. Dus direct in de map public_html
  4. Ga op de nieuwe locatie van je website naar http://jewebsite.nl/search/index.php
  5. Je bent klaar om te zoeken en vervangen!

Zoeken en vervangen in de database

Zoals je gelezen hebt ga je naar http://jewebsite.nl/search/index.php. Je krijgt dat het onderstaande scherm:

Search / Replace WordPress Database

Bij search for vul je bijvoorbeeld in: http://jeoudewebsite.nl. Mocht je van een subfolder naar de root verhuisd zijn dan kun je ook alleen instellen /oudemap/.

Bij replace with vul je in http://jenieuwewebsite.nl. In het geval van een subfolder kun je deze dus leeg laten. Je wilt namelijk de verwijzing naar de subfolder helemaal verwijderen.

Dry of Live run

Je hebt nu alles ingevoerd en bent klaar om de zoek en vervang actie in te zetten. Heb je een goede backup van je database? Dat is uiteraard heel belangrijk voor het geval dat er iets mis gaat. Maar ik ging er eigenlijk van uit dat je die al gemaakt had voordat je überhaupt iets met de database ging doen.

Dry or live runIk kies altijd eerst voor de optie ‘dry run’. Hiermee simuleert de tool je wijzigingen en kun je bekijken hoeveel wijzigingen er gemaakt worden. Eventueel kun je die wijzigingen ook aanklikken en bekijken wat er daadwerkelijk gewijzigd zal gaan worden.

Ben je overtuigt? Dan is het tijd voor een ‘live run’!

Job done

In principe ben je nu klaar. Tijd om je website te testen dus! Alle verwijzingen kloppen nu dus alle afbeeldingen en teksten zouden zichtbaar moeten zijn. Is dit niet het geval? Misschien heb je iets aan deze blog over veel voorkomende WordPress problemen.

Vergeet niet om de eerder gekopieerde map search weer te verwijderen. Dit wordt ook aangegeven na de live run. Het is van belang om de veiligheid van je webserver niet in gevaar te brengen! Want dit is voor hackers een makkelijk ingang naar je database. En in de database kun je bijvoorbeeld een user aanmaken en dan heb je echt een groot probleem.

Website voorzien van SSL

Google heeft aangegeven dat SSL in 2016 steeds meer een belangrijke rankingfactor gaat worden. En aangezien je niet achter wilt blijven heb je dus een SSL certificaat aangeschaft. Maar om het certificaat te laten functioneren moeten alle verwijzingen in je database naar https:// verwijzen in plaats van http://.

De tool is ook perfect bruikbaar om in een keer alle verwijzingen aan te passen. Wil je weten welke verwijzingen het SSL certificaat blokkeren? Test je website met https://whynopadlock.com 

Kom je er niet uit of heb je hulp nodig? Neem dan direct contact op.

Op zoek naar een WordPress Specialist?

Naam*
Dit veld is bedoeld voor validatiedoeleinden en moet niet worden gewijzigd.