Die Umbenennung von WordPress ist leider keine leichte Übung, wo man im Backend nur den Websiteadresse ändert. Vor allem die internen Bilderlinks werden dann nicht mehr funktionieren: Hier ist der Name der Website hartkodiert.

Es gibt verschiedene Gründe, warum sich der Domainennamen ändert, unter dem WordPress läuft: Vielleicht wurde die Firma/Organisation übernommen oder hat sich umbenannt; oder man will eine zweite Version der Website zum Testen und eine dritte zum Entwickeln betreiben.

Wie in der Einleitung geschrieben, kann man da nicht einfach im Backend unter Einstellungen die „WordPress-Adresse (URL)“ und „Website-Adresse (URL)“ ändern. Da wird es Probleme mit internen Links geben. Insbesondere mit allen Image-Links, da die weiterhin auf die alte URL verweisen werden. Für mich fast so etwas, wie ein Zero-Day Bug: das war halt immer schon so. Nun, das hätte man ursprünglich vielleicht intelligenter programmieren können und sich die Adresse aus eben diesen Einstellungen als Variable holen können.

Was macht man nun? Wie kann man diese hartkodierten Links in der gesamten Website ändern?

Nun, dazu muss man diese in der SQL-Datenbank aktualisieren. Wer nun aber fürchtet, dass er SQL-Statements in phpmyadmin eingeben muss, der sei beruhigt: Es gibt ein sehr mächtiges Plugin, das das erledigt: Und nur für diese Ausgabe aktiviert und danach gleich mal wieder deaktiviert werden sollte …

Better Search Replace: Der Retter in der Not

Mit dem Plugin Better Search Replace können Zeichenketten in deiner WordPress-Datenbank gesucht und ersetzt werden. Da kann man eventuell seinen neuen Firmennamen auch mit „Suchen und ersetzen“ auf allen Seiten (Pages) und in allen Beiträgen (Posts) statt des alten Namens ausrollen – wenn das sinnvoll ist.

Aber für uns viel wichtiger: hier können die Bilderlinks getauscht werden.

Schauen wir uns an, was Better Search Replace alles kann:

  • unterstützt serialisierte Arrays und Objekte in allen Tabellen
  • Tabellen können einzeln ausgewählt werden, auf die das „Suchen und Ersetzen“ angewandt wird
  • Testlauf-Funktion, um vorab zu sehen, in wie vielen Fällen eine Änderung vorgenommen werden würde
  • unterstützt auch Multisite-Installationen von WordPress: Gottseidank, das benötige ich gerade

Es gibt auch eine kostenpflichtige Version, die sicherheitshalber auch ein Backup der Datenbank vor dem Eingriff anlegt, genauer zeigt, wo die Änderungen erfolgen werden und auch mit einem besseren Support lockt.

Aber: no risk, no fun: probieren wir es mit der Gratis-Version. (Sie sind sicher intelligenter und unterstützen den Entwickler Matt Shaw von Delicious Brains Inc.: https://bettersearchreplace.com/

Kurzanleitung für Domainnamenänderung mit Better Search Replace

  • Die Vorarbeiten müssen gemacht sein
    • Die neue Domaine ist registriert und auf den Domainnameservern (DNS) bzw. am Server eingerichtet (als Subdomain oder Domaine)
    • Ein Zertifikat läuft auch bereits für die Domaine (vielleicht ja ein Wildcard-Zertifikat von Lets Encrypt)
  • Unter „Einstellungen:Allgemein“ in WordPress wurde die „WordPress-Adresse (URL)“ und „Website-Adresse (URL)“  zu dem neuen Domainnamennamen geändert.
  • Und nun in das Plugin Better Search Replace  selbst hinein:

Das SQL-Statement