In den meisten Fällen ist es sehr praktisch, eine neue WordPress-Webseite zuerst auf einem lokalen Server anzulegen. So kannst du auch offline an deinem Projekt arbeiten und Änderungen schnell im Browser testen. Wenn du auf deiner lokalen Version nicht nur das WordPress-Theme erstellen möchtest, sondern auch Seiten einrichtest, Texte einfügst, Plugins installierst und Einstellungen in WordPress vornimmst ist es wichtig, dass du all diese Einträge später auch auf deine richtige Domain umziehen kannst.
Für den Umzug musst du neben den Daten der WordPress-Installation und des Themes auch alle Datenbank-Einträge übertragen. Da man diesen Exportieren/Importieren-Prozess ja nicht so oft durchführt, habe ich eine kleine Anleitung verfasst, in der ich Schritt für Schritt beschreibe, was für die WordPress-Übertragung von einem lokalen Server auf die Live-Domain nötig ist.
1. Alle Daten via FTP hochladen
Als erstes musst du mit Hilfe eines FTP-Programms (z.B. dem kostenlosen Filezilla) alle Daten der lokalen WordPress-Installation auf deinen Online-Server hochladen. Dabei ist es wichtig, dass du den richtigen, für deine Domain angelegten Pfad nutzt.
2. Die wp-config.php bearbeiten
Jetzt kannst du dir die wp-config.php (diese befindet sich im Hauptverzeichnis der WordPress-Dateien) auf deinem Computer kopieren. Hier musst du die Angaben deiner Domain und deiner Datenbank aktualisieren.
Die Einträge Datenbankname (define DB_NAME in Zeile 18), Datenbank-Benutzername (define DB_USER), Datenbank-Passwort (define DB_PASSWORD) und in manchen Fällen auch die MySQL-Serveradresse (define DB_HOST) müssen geändert werden.

Die Änderungen in der wp-config.php Datei.
Es ist also wichtig, dass du dir für deine Online-WordPress Installation bereits eine neue Datenbank mit Passwort angelegt hast. Hast du alle Einträge aktualisiert, kannst du die wp-config.php Datei über FTP neu hochladen.
3. Die Datenbank exportieren
Nachdem deine WordPress-Daten online sind, musst du im nächsten Schritt die Einträge der Datenbank exportieren. Ist die Datenbank nicht ungewöhnlich groß, kannst du das Programm PHPMyAdmin für den Export/Import nutzen. Dazu öffnest du über das Menü deines lokalen Servers, das Programm PHPMyAdmin.

So kannst du PHPMyAdmin mit dem Programm XAMPP öffnen.
PHPMyAdmin öffnet sich in deinem Standard-Browser und du kannst die Datenbank der lokalen WordPress-Installation auswählen. Hast du die Datenbank angewählt, klickst du in der oberen Optionsleiste auf den Button »Exportieren«.

Wichtig ist, dass du alle Tabellen deine Datenbank beim Exportieren mit überträgst. Deshalb musst du darauf achten, dass du unter »Exportieren«, »Alle Auswählen« anklickst und soalle Tabellen grau markierst.

Dann machst du beim Punkt »Struktur« noch ein Häkchen bei »Füge DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT hinzu«.
Jetzt machst du noch ein Häkchen bei »Speichern«. Dann kannst du den Button OK klicken, um die Datenbank zu exportieren. Wenn du möchtest, kannst du auch eine komprimierte Version (z.B. zip oder G-ZIP) zum Export wählen.

Deine Datenbank ist jetzt im Format datenbankname.sql auf deinem Computer gespeichert.
4. Die Datenbank-Datei anpassen
Jetzt musst du deine Datenbank noch anpassen, damit auch deine richtige URL eingetragen ist. Um alle Einträge mit der URL des lokalen Servers (z.B. http://localhost/blog/) mit der URL deiner Domain zu ersetzen, nutzt du am besten einen Texteditor (z.B. den kostenlosen Notepad++) und die Suchen/Ersetzen-Funktion.
Wenn du deine .sql Datei im Texteditor geöffnet hast, wählst du also die Suchen/Ersetzen-Funktion und trägst hier die URL des lokalen Servers unter »Suchen nach« und die URL deiner richtigen Domain unter »Erstetzen durch« ein.

Die Suchen und Ersetzen-Funktion im Notepad-Texteditor.
Diese aktualisierte Datenbank-Datei kannst du jetzt im nächsten Schritt in deine neu angelegte Datenbank importieren.
5. Die Datenbank importieren
Hierfür öffnest du wieder das PHPMyAdmin-Programm, diesmal allerdings über den Zugang deines Online-Servers. Meist findest du den Zugang über das Kunden-Menü deines Hostinganbieters. Wähle deine bereits angelegte, neue Datenbank aus und klicke auf den Importieren-Button.

Jetzt wählst du die eben bearbeitete .sql Datenbank-Datei aus. Nachdem Datenbank-Import sollte jetzt genau die gleiche Anzahl an Tabellen in deiner Datenbank sein, wie zuvor in der Datenbank der lokalen Server-Installation.
Vorausgesetzt alle Übertragungen haben korrekt geklappt, kannst du jetzt bereits deine WordPress-Seite online auf deiner Domain aufrufen. Außerdem kannst du dich wie gewohnt mit dem gleichen Benutzernamen und Passwort wie auf der lokalen WordPress-Installation über deinedomain.de/wp-login.php in deinem WP-Adminbereich anmelden.
Wichtig ist, dass du in deinem WordPress-Theme Dateien keine direkte URLs eingetragen hast, sondern immer die WordPress-Funktion:
<?php bloginfo('url'); ?>
(Mehr Infos zur Funktion bloginfo im WordPress-Codex).
So ist dein Theme flexibel und kann für die unterschiedlichsten WordPress-Webseiten genutzt werden, ohne dass eine Änderung im Code nötig wird.
Ich hoffe, dass diese kleine Anleitung eine hilfreiche Unterstützung für die WordPress-Übertragung von einem lokalen Server auf die Live-Domain ist. Falls du Fragen, weitere Tipps oder Anmerkungen zum Tutorial hast, freue ich mich sehr auf deine Nachricht!
man sollte auch den pfad in der sql datei kontrollieren. manche plugins funktionieren sonst noch.
Hallo Robert,
vielen Dank für deinen Kommentar und den Hinweis. Ja, den korrekten Pfad auch in der Datenbank zu übernehmen ist auch alle Fälle super wichtig. Sonst klappt die Übertragung der Datenbank natürlich nicht :-)
Viele Grüße,
Ellen
Woran liegt es wohl denn wohl, daß bei einem eingespielten Backup die Umlaute nicht korrekt angezeigt werden?
Hallo Benedikt,
wie Tom ja schon in seiner Antwort geschrieben hast, solltest du das Exportieren/Importieren der Datenbank noch einmal durchführen und dabei auf die UTF-8 Kodierung achten. Dann sollten die Umlaute eigentlich angezeigt werden können :-)
Viele Grüße,
Ellen
Hallo Ellen,
ich gehe eigentlich genau so vor, wie Du Eingangs beschrieben hast. Das auch aus dem Grund, dass ich Anpassungen oder neue Plugins immer erst an meiner lokalen Installation ausprobieren kann, ohne mir meine produktive Installation zu zerschießen.
Bis jetzt war ich aber, aus welchen Gründen auch immer, zu bequem, mir Gedanken über den Transfer meiner lokalen Installation auf den Server zu machen. Insofern danke ich Dir vielmals für Deine ausführliche und tolle Beschreibung.
Spannend wäre es jetzt, dass Ganze »rückwärts« zu exerzieren. Das heisst das ich auf diesem Weg doch eigentlich meine produktive Umgebung auch in meine lokale Umgebung beamen könnte … Werde ich auf jeden Fall mal ausprobieren.
Liebe Grüße
Jörg
Hallo Jörg,
danke für dein Feedback. Ja, umgekehrt funktioniert es eigentlich genauso. Das könnte nützlich sein, wenn du eine bestehende Seite erst einmal lokal überarbeiten möchtest.
Viele Grüße,
Ellen
Hallo Ellen,
als Erweiterung könntest Du den Upload/Deploy mittels eines Versionierungssystems (GIT oder SVN etc.) noch erklären ;)
Ich finde man sollte generell Versionierungssystemen nutzen, um effektiv arbeiten zu können. Auch ist das Hochschieben der Dateien um einiges angenehmer finde ich.
Liebe Grüße,
Peter
Vielen Dank für das tolle Tutorial, kam genau zur richtigen Minute und konnte es gleich umsetzen. Allerdings habe ich folgendes Problem, dass ich bei einem neuen wp-Blog auch statische Seiten eingefügt habe und diese nach dem Umzug nicht gefunden werden. Habe mehrmals versucht, die Datenbank rüberzuspielen, hat im Grunde alles super funktioniert nach der Anleitung, nur die statischen Seiten lassen sich über das Menü nicht anwählen. Könnt Ihr mir vielleicht weiterhelfen?
Übrigens finde ich euren Blog superklasse. Ich verfolge seit ein paar Monaten, seit dem ich mich mit WP beschäftige eure Site und bin total begeistert.
Liebe Grüsse
Edi
Habe vorhin einen Kommentar geschrieben, weil die statischen Seiten nach dem Umzug auf die Domain nicht funktionierten. Nach einiger Recherche im Internet habe ich den Tipp gefunden, im Backend bei den »Einstellungen« alle Punkte durchzugehen und überall auf »Änderungen speichern« zu klicken. Das habe ich getan und jetzt funktioniert alles. Nochmals vielen Dank für das tolle Tutorial.
Hallo Edi,
vielen Dank für deine Kommentar, super, dass du es doch noch hinbekommen hast und auch gleich deine Lösung hier beschrieben hast. So kann deine Antwort bestimmt auch anderen weiterhelfen :-)
Viele Grüße,
Ellen
@Peter
Versionierung hast du auf Shared Hosting Paketen in der Regel nicht. Mit einem eigenen Server sieht das natürlich anders aus, aber SVN oder Git auf dem Server laufen haben eben auch nur die technisch etwas versierten und die kriegen das wiederum eigentlich auch ohne Anleitung hin :)
Hallo Ellen,
vielen Dank für den Artikel. Schön dass du hier Licht ins Dunkel bringst. Wie ist das denn mit der Rechtevergabe für dir Dateien? Muss man da etwas berücksichtigen? Und gibt es in Bezug auf .htaccess Besonderheiten? Mir fehlten nämlich mal die Rechte um Plugins zu installieren.
Viele Grüße,
Stefan
Hallo Stefan,
vielen Dank für dein Feedback, es freut mich, dass du die Anleitung hilfreich findest :-) Eigentlich musst du bei den Dateirechten nichts an der Standard-Einstellung vom WordPress-Download ändern. Wenn es doch einmal Probleme mit den Rechten geben sollte, schau doch einmal den WordPress-Codex Eintrag zum Thema »Changing File Permissions« an. Dieser hilft meist ganz gut weiter :-)
Viele Grüße,
Ellen
@Dominik:
Viele Hoster bieten mittlerweile auch Features wie Versionierung an. Und auch vServer werden irgendwie immer beliebter, weil immer billiger und mehr Leistung.
Und es gibt sicherlich viele, die sich gerne noch das eine oder andere aneignen möchten ;)
deswegen meine Idee ;)
@Benedikt: Die falschen Umlauten kommen sicher von einem Mix aus UTF-8 und ISO beim Ex- und Importieren und Editieren der Datenbank. Da hatte ich auch schon meine Freude mit. Am besten ist, wenn von Anfang an alles auf UTF-8 läuft. Auch die neu zu erstellende Datenbank auf dem Server.
Hallo Tom,
vielen Dank für deine Antwort. Du hast Recht, es kann leicht passieren, dass man mit der Kodierung durcheinander gerät und so schnell Fehler auftreten können. Ich werde den Artikel noch einmal updaten, und einen extra Hinweis zur Kodierung einfügen :-)
Vielen Dank für deine Antwort und viele Grüße,
Ellen
@Peter Klein, @Dominik,
vielen Dank für eure Kommentare zum Artikel. Ja, es könnte sein, dass die Beschreibung mit Hilfe eines Visionierungssystems ein wenig advanced ist. Generell freue ich mich aber natürlich sehr über alle Tipps und Vorschläge und ich werde mal schauen, ob ich die Idee nicht doch einmal in einem Folge-Tutorial beschreiben kann. Man könnte ja dann beide Anleitungen verlinken und so findet jeder die passende Beschreibung :-)
Vielen Dank für eure Vorschläge und viele Grüße,
Ellen
Hey Ellen,
hast Du selber Erfahrung bei der Arbeit mit Versionierungstools, auch in Verbindung mit WordPress?
Falls Du Fragen dazu hast, mail mcih einfach an ;)
Liebe Grüße
Wirklich wieder eine ganz tolle Anleitung, die bestimmt auch vielen helfen wird. Danke!
Danke für die tolle Anleitung. Funktioniert soweit alles wunderbar, nur habe ich in meiner PHPMyAdmin Version nicht die Option »Zeichencodierung der Datei« wie im Bild oben zu sehen.
Und beim Download sehe ich nun, dass die Sonderzeichen nicht richtig dargestellt werden. Gibt’s eine andere Möglichkeit, UTF8 irgendwo zu definieren vor dem Export?
Danke!
Hallo Ellen,
habe deine informativen Artikel gerade erst entdeckt. :)
Mal eine Frage:
Wie gehe ich denn sinnvollerweise vor, wenn ich eine schon existierende »normale« Website auf WordPress umwandeln will, WP auch schon parallel auf dem Server installiert habe, aber jetzt doch eher lokal basteln möchte (es ist für mich doch komplizierter als ich dachte :/)?
Falls die Frage zu sehr ins Detail geht kannst du auch gerne per email antworten.
Gruß,
Stephan
Wirklich nette Anleitung, wenn man das bisher noch nicht gemacht hat.
Kleine Anmerkung: Für WordPress reicht dass natürlich in dieser Form. Versucht man allerdings mal mit größeren Datenbanken umzuziehen (Drupal, etc.) rate ich beim Im- und Exportieren per PhpMyAdmin ab und würde dabei eher Tools wie mysqldumper (mysqldumper.de) nutzen.
Hi Ellen,
vielen Dank für den tollen Beitrag - sehr nützlich !
Ich habe leider _immer_ das Problem das meine Themeeinstellungen nach dem Servertransfer »verschwinden«. Diese darf ich dann manuell anpassen …
Was kann ich da falsch gemacht haben?
LG, Igor
Hallo Ellen,
oben schreibst Du im Abschnitt, wie man die URL ändert: »Jetzt musst du deine Datenbank noch anpassen, damit auch deine richtige URL eingetragen ist …«
Jenachdem wie groß eine SQL-Datei ist, kann das schon ganz schön lange dauern im Editor, bis diese geladen ist. u.U. kann dieser auch seinen Dienst verweigern ( alles schon vorgekommen ).
Man kann die URL auch recht einfach mittels eines MySQL Statements ändern, welches so aussieht:
UPDATE wp_posts SET post_content = REPLACE(post_content, ›alter Wert‹, ›neuer Wert);
Natürlich sollte man auf den Präfix achten, den man in der wp-config.php angegeben hat.
Dieses Statement läuft sehr schnell durch und hilft natürlich, sofern man ein wenig Ahnung von MySQL hat.
Sonnige Grüße aus Berlin,
Peter
Hallo,
ich hab das Tutotial abgearbeitet, doch PHPmyadmin öffnet sich nicht,
Fehlermeldung: Error 404
localhost
Apache/2.2.17 (Win32) mod_ssl/2.2.17 OpenSSL/0.9.8o PHP/5.3.4 mod_perl/2.0.4 Perl/v5.10.1
localhost ist in der config.inc. als Server angegeben.
Habe auch keinen Zugriff mehr auf meine wp-Dateien. Ich nehme an, das irgendeine Konfiguration falsch ist, finde aber den Fehler nicht (habe schon im PHPmyadmin tutorial vom webmaster-portal.de und bei den PHPmyadmin Forum geschaut ‚deswegen - sorry - poste ich jetzt noch mal hier).
Sylvia
404 bedeutet ja, dass die Seite nicht gefunden wird.
Vielleicht PMA noch mal hochladen oder die .htaccess auf »falsche« Umleitungen überprüfen?
Hallo Tom,
jetzt steht alles! Vielen Dank an alle, die sich mit meinen Chaos-Fragen auseinandergesetzt haben! und ein Tipp (für WP- und PHP-Neulinge wie ich): wenn sich über das xampp panel die phpmyadmin-Seite nicht öffnet, die http://localhost in die Adresszeile des Browsers eingeben und dann weiter in Ellens Tutorial. Meine Quelle:
http://www.wordpress-magazin.de/wordpress-lokal-installieren-und-testen/
Grüße, Sylvia
Hallo Ellen,
zunächst vielen Dank für die exakte Anleitung, die ich präzise umgesetzt habe.
Trotzdem ist der volle Erfolg (noch) ausgeblieben. Erreicht ist lediglich, dass die Live-Webseite zwar lädt a b e r die Verlinkung noch voll auf den Localhost erfolgt und somit mit einem Fehlerhinweis endet.
Meine Situation stellt sich im Prinzip wie folgt dar:
1. wenn ich den localen Datenbankdump mit dem Notepad nachbearbeite und http://localhost/wordpress/ durch meine Life-Url ersetze http://wasserblog.gesundheit-ist-lebensfreude.de dann werden im online--Betrieb unerwarteterweise sämtliche Links egal ob Blogartikel oder Impressum auf den Localhost geleitet. Das ist mir aufgrund des Suchen/Ersetzen Vorgangs ziemlich unverständlich. Außerdem wird kein Header-Bild mehr angezeigt.
2. deshalb ( weil selbst das Header-Bild entfallen ist ) habe ich den lokalen Datenbankdump mit den Localen-Adressverweisen belassen und in die Live Datenbank importiert.
Ergebnis: Der Blog wird einwandfrei, incl. Headerbild angezeigt ABER nach wie vor gehen alle Links auf den Localhost
3. der dritte Versuch bestand darin in der config.php die MySql-Serveradresse, die immer noch auf localhost stand ( nachdrückliche Auskunft vom Provider !!) doch abzuändern und zwar auf 2 unterschiedliche Arten
Nr. 1= define(›DB_HOST‹, ›http://wasserblog.gesundheit-ist-lebensfreude.de‹);
Nr. 2 = define(›DB_HOST‹, ’82.96.81.15′);
In beiden Fällen kommt noch ein schlechteres Ergebnis zustande, nämlich, dass der Blog überhaupt nicht mehr aufgerufen kann. Der Fehlerhinweis lautet auf:
Error establishing a database connection
JETZT ist mein Latein am Ende und könnte Hilfe gut gebrauchen. Mit dem Provider hapert es zumindest.
Kannst Du mir helfen ?
Dafür wäre ich Dir sehr dankbar, nachdem ich mindestens einen Arbeitstag damit verbracht habe, dennoch die Kurve zu kriegen.
Viele Grüße
Günter
@Günter Schmitt, bei mir hat Deine Seite keine Verweise auf den »localhost« - Dein Cache geleert? VG, Igor
Guten Abend Igor,
danke für das feedback. Aber BEI MIR hat sich überhaupt nichts geändert.
Bei jedem Link an irgendeiner Stelle im blog kommt nach wie vor:
Fehler: Verbindung fehlgeschlagen
Firefox kann keine Verbindung zu dem Server unter localhost aufbauen.
Die Tatsache, dass Du die Links anstandslos ausführen kannst erstaunt mich
sehr.….
Gruss
Guenter
Vielen Dank für den ausführlichen und sehr gut beschriebenen Artikel. Dieser hat mir sicherlich eine Menge Zeit und Ärger erspart.
Grüße
Oli
Danke für den klasse Artikel, die Übertragung hat fast ohne Probleme funktioniert. Ich nutze das Nilmini Theme, hatte nur ein paar kleine Probleme mit den Theme Options, welche nicht richtig übernommen wurden. Zum Bsp. das Hintergrundbild konnte nicht gesetzt werden, weil das Uploadverzeichnis auf chmod 755 gesetzt war. Auf jeden Fall hat auch mir Dein Artikel eine ganze Menge Zeit erspart!
Hallo Ellen,
vielen Dank für diesen tollen Bericht! =) Ich habe ihn soeben ausgetestet aber genau andersrum. Sprich meine aktuelle Webseite auf meinem localhost gespiegelt. Soweit hat alles geklappt aber jetzt noch folgendes:
Ich sehe meine Startseite. Gehe ich aber auf irgend einen statischen Link, werde ich immer direkt zur Xampp Oberfläche weitergeleitet… =(
MfG
Hallo Ellen,
vielen Dank für deine Anleitung! Der Umzug hat soweit geklappt. Leider kann ich mich nicht ins backend einloggen, nach Eingabe von User und Passwort erscheint nur ein weißer Screen, ohne Fehlermeldung. Auch in der Fehlerkonsole wird nichts angezeigt. Ich lese seit 6 (!) Stunden Foreneinträge, das Problem des weißen Screens ist ja ziemlich verbreitet. Mit keinem der Lösungsansätze konnte ich das Problem beheben.
Hast du vielleicht eine Idee?
Lg, Guido
Eine Info von einem Newb an Newbs.
1. exportiert die sql-datei und benennt diese so um, wie diese auf der Domain heißt.
2. Die SQL Datei verändern:
http://localhost/blog/ --> http://deinedomain/
und
localhost --> Datenbankname der domain
Berichtigt mich, ruhig, aber nur so hat es bei mir funktioniert. Vielleicht meint Ihr das mit der Pfadveränderung
Hallo Ellen,
ich hab WordPress lokal mit xampp installiert, bei meinem hoster war es schon vorinstalliert. Die WP Version ist dieselbe, das Theme ist dasselbe (twenty eleven), die widgets sind dieselben, trotzdem ist die Darstellung meiner Homepage lokal anders, als beim Hoster. Über Xampp ist die Side wesentlich breiter dargestellt, was mir auch deulich besser gefällt, als beim Hoster.
Woran kann das liegen? Was kann ich als Newb ohne große Programmierkenntnisse tun, damit auch die öffentl. Version breiter dargestellt wird?
LG
Annette