Beiträge, die erläutern, wie man WordPress zu einer anderen Domain umzieht, gibt es wie Sand am Meer. Für den Fall, dass man eine Multisite-Installation umzieht, wird jedoch ein wichtiger Punkt oft nicht genannt. Dies ist umso unangenehmer, als es hier zu einer völlig in die Irre führenden Fehlermeldung kommen kann.
Einfacher Umzug
Der Umzug von WordPress auf eine neue Domain ist zunächst ganz einfach. In der Datenbank müssen nur zwei Einträge angepasst werden:
In der Tabelle wp_options
müssen in den Spalten siteurl
und home
die URLs für die neue Domains eingetragen werden. In einer einfachen WordPress-Installation war es das schon!
Multisite
Bei einer Multisite-Installation muss aber noch etwas mehr gemacht werden.
Vergisst man z.B. in der Tabelle wp_blogs
die Domains zu ändern, verabschiedet sich WordPress dummerweise mit einer sehr blöden Fehlermeldung: Das einzige — und ja auch falsche! — was WordPress meldet ist „Fehler beim Aufbau der Datenbankverbindung!“ Wer jetzt nach einem Fehler in den Verbindungsdaten sucht, kann lange suchen…
In folgenden weiteren Tabellen müssen die Domains mindestens umgestellt werden:
wp_blogs
wp_options
wp_site
wp_sitemeta
wp_*_options
Das * im Namen der letzten Tabelle bedeutet, dass es von dieser Tabelle mehrere mit je unterschiedlichen Nummern anstelle des * geben kann, je nachdem wieviele Sites man einsetzt, z.B. wp_3_options
, wp_4_options
etc. In allen muss man nach alten Domains schauen.
Weitere absolute URL-Angaben
Medien
Für beide Installationsarten gilt, dass es nach einem Umzug dazu kommen kann, dass Medien und anderes per URL eingebundenes nicht richtig angezeigt oder geladen wird. Denn hat man die Medien mit einer absoluten URL eingebunden, stimmt die natürlich nicht mehr.
Dies von Hand zu korrigieren kann natürlich umfangreich werden, weswegen der erste Tipp sein dürfte, nach Möglichkeit nie absolute URLs zu verwenden.
Eine andere Möglichkeit, sich das Anpassen zu erleichtern könnte hier aber auch folgendes Vorgehen sein. Einen SQL-Export (Dump) der alten Version der Datenbank lädt man in einen Editor und ersetzt dort alle Vorkommen der alten Domain durch die neue. Die so bearbeitete Datei dann wieder importieren. Dann hat man zwar wieder absolute URLs, aber wenigstens läuft es erstmal. (Das sollte man natürlich nur machen, wenn man vorher ein Backup angelegt hat, denn nur allzu leicht hat man hier etwas übersehen oder vergessen und dann geht gar nichts mehr…)
.htaccess
Und schließlich muss auch die .htaccess
-Datei im Wurzelverzeichnis von WordPress kontrolliert werden. Es ist nicht sicher, dass dort Domain-Angaben stehen, aber kontrollieren sollte man es doch.