Mit WordPress in 11 Schritten umziehen

Durch die Arbeit mit WordPress an dieser Webseite bin ich natürlich irgendwann in die Situation gekommen, wie ich von meinem Localhost zu meinem Hoster umziehe ohne wieder mit der Arbeit von vorne beginnen zu müssen. Die einfachste Lösung war, wie so oft, eine Suchmaschine mit meinem Problem zu befragen. Tatsächlich bekommt man sehr viele Anleitungen, die auch selbst den Anspruch haben einen kompletten Umzug zu beschreiben. Leider stellte sich dann bei der praktischen Umsetzung schnell heraus, dass das gar nicht so komplett ist.

Bei der ersten Anleitung der ich gefolgt bin, hatte der Autor vergessen zu erwähnen, dass z.B. Links zu den Medieninhalten im WordPress nach dem Umzug angepasst werden müssen. Da die Seite noch recht klein war konnte ich nach dem Umzug die Bilder einfach nochmal einfügen und die Links haben wieder gepasst.

Das wollte ich beim nächsten Mal besser machen und ich habe nach einer neuen Anleitung gesucht. Darin gab es einen Punkt mit den Links. Ein Vorschlag war, die exportierte SQL Datenbank mit einem Texteditor zu bearbeiten und alle Links durch suchen/ersetzen zu tauschen. Das klingt Logisch und so habe ich es dann versucht. Leider musste ich feststellen, dass der größte Teil der Bilder gepasst hat aber das Farben, Schriften oder einige Themeeinstellungen nicht mehr vorhanden waren.

Die nächste Suchmaschinenrecherche…

Ich fand sogar einen Artikel mit dem gleichen Problem und auch eine passende Erklärung warum das keine so gute Idee ist die Links so zu tauschen. Im WordPress sind einige Daten serialisiert. Das heißt die Daten sind an einer langen Kette zusammengesetzt. Um sich entsprechende Daten aus dieser Kette wieder zugänglich zumachen, wird dann mit Indexen gearbeitet, also quasi abgezählt wo sich was befindet. Wenn ich jetzt in dieser Kette einfach einen Link tausche und dieser neue Link hat einer andere Länge als das Original passt dann dahinter natürlich nichts mehr.

Aber glücklicherweise gab es auch die passende Lösung und aus all diesen Erfahrungen möchte ich jetzt aus meiner Sicht schreiben wie so ein Umzug in 11 Schritten durchaus funktionieren kann.

Die Ausgangssituation ist eine lokale WordPressinstallation auf meinem Rechner und ich möchte mit dieser zu meinem Hostinganbieter umziehen.

Sie sollten Sie zuerst einmal prüfen ob die PHP Version und die MySQL Version auf beiden Systemen kompatibel sind. Das geht es am einfachsten wenn Sie ihren lokalen phpMyAdmin Account aufrufen. Dort finden Sie alle wichtigen Informationen.

phpMyAdmin

Versionen im MyAdmin

Jetzt bleiben Sie gleich hier und können die lokale Datenbank exportieren. Sie wechseln dazu in Ihre Datenbank und in den Reiter Exportieren.

mysql export

Datenbank exportieren

Die Einstellung ’schnell‘ lassen Sie so und bestätigen mit OK. Es wird eine Datei mit der Endung .sql erstellt.

mysql export setting

mysql schnell export

Jetzt können Sie zu Ihrem Hoster wechseln und dort eine neue Datenbank anlegen. Da dies von Hoster zu Hoster unterschiedlich kann ich darauf nicht genauer eingehen. Ich zeige es hier am Beispiel von Strato.

Unter dem Punkt Datenbank und Webspace kann ich mir eine neue Datenbank anlegen.

strato datenbank

datenbank anlegen

Ich vergebe ein sicheres Passwort und lege die Datenbank an. Das Passwort den Datenbanknamen und den Benutzernamen speichere ich mir in eine Textdatei.

datenbank logins

datenbank logins

Dann können Sie in die neue Datenbank wechseln. Diese sieht noch sehr übersichtlich aus und Sie können die soeben exportierte sql Datei hier importieren. Über den Reiter importieren suchen Sie die Datei und starten den Import.

datenbank import

datenbank importiert

Nach dem Import finden Sie eine Tabelle wp_options (sofern Sie nicht die Vorsilbe geändert haben) und darin gibt es einen Eintrag siteurl und home.

inhalt tabelle

wp_options

diese können Sie durch einen Doppelklick ändern und Ihre aktuelle URL eintragen.

Das war es auch schon was die Datenbanken angeht.

Wie die Überschrift schon andeutet, kopieren Sie sich jetzt ihre lokale WordPressinstallation und fügen diese am gleichen Ort mit neuem Namen wieder ein. In dieser Kopie müssen jetzt ein paar Änderungen vorgenommen werden und da Sie mit der lokalen Installation noch weiter arbeiten möchten, empfiehlt es sich nicht diese zu ändern.

In dem Verzeichniss finden Sie eine Datei wp-config.php diese können Sie mit einem beliebigen Texteditor öffnen, Darin finden Sie die Konstanten:

  • DB_NAME
  • DB_USER
  • DB_PASSWORD
  • DB_HOST

die dürften bis auf den Datenbanknamen auch bei Ihnen so aussehen.

Inhalt wp_config

Inhalt wp_config

Diese Konstanten jetzt mit den Daten der neu angelegten Datenbank tauschen.

wp_config bearbeitet

wp_config bearbeitet

Im gleichen Ordner gibt es ein .htaccess Datei. Die auch unbedingt prüfen. Falls Sie ihre lokale Installation in Unterordnern abgelegt haben müssen ein paar Regeln angepasst werden. Für den wahrscheinlichen Fall das ihre Webseite bei Ihrem Hoster direkt im Root-Verzeichnis liegt dann sollte die Datei so ausehen:

htacces korrekt

htaccess richtig

Es dürfen dann bei RewriteBase und RewriteRule keine Verzeichnisse stehen:

htaccses falsch

htaccsess fehlerhaft

den geänderten Ordner können Sie jetzt zippen.

Mit einem FTP Clienten können Sie den Ordner auf Ihren Server kopieren.

Sie können den Ordner auch ungezippt auf den Server kopieren, Sie werden aber feststellen, dass das unheimlich viel Zeit in Anspruch nimmt.

Um den Ordner jetzt auf Ihrem Server zu entpacken, können Sie den unzipper.php verwenden. Diese Datei in das selbe Verzeichnis wie den gepackten Ordner kopieren. Über ihre URL also www.meinewebseite.de/unzipper.php können Sie den unzipper starten. Der ist recht selbsterklärend und sie brauchen nur den gezippten Ordner auswählen und loslegen.

Jetzt sollten Sie ihre Domain auf diesen Ordner umleiten. Da das wieder von Hoster zu Hoster unterschiedlich ist, gehe ich da nicht näher drauf ein.

Dann ist es schon fast geschafft und wir können uns mit der neuen URL im Adminbereich anmelden. Falls Sie jetzt eine Fehlermeldung bekommen, dass es einen Zugriffsfehler auf die Datenbank gibt, müssen Sie sich Ihre wp-config.php nochmal anschauen ob sich da Fehler eingeschlichen haben und ob die Links in der Tabelle wp_options stimmen.

Für die restlichen Links installieren wir ein Plugin das diese Arbeit für uns erledigt. Ich habe dafür das Plugin Better Search Replace benutzt.
Nach der Installation finden Sie in den Werkzeugen das neu installierte Plugin. Hier tragen Sie den URL Teil ein der ersetzt werden soll und die neue URL die diesen ersetzt. Dann noch alle Tabelle auswählen in denen gesucht werden soll und los geht‘s.

plugin better search replace

plugin better search replace

Somit sind Sie in 11 Schritten zu ihrem Hoster umgezogen und können dort weiterarbeiten. Ich hoffe es hat Ihnen ein wenig weitergeholfen und ich konnte Ihnen die umständliche Recherche ersparen. Da Sie ja jetzt so viel Zeit gespart haben und kurz vor Ihrem Durchbruch als Automtisierungstechniker stehen, können Sie ja noch ein Blick auf meinen Kurs WinCC im TIA Portal in der Praxis werfen 😉