Kurz gesagt: Die Adresse deiner Website änderst du unter Einstellungen → Allgemein in den Feldern „WordPress-Adresse (URL)“ und „Website-Adresse (URL)“. Damit ist es aber meist nicht getan: Alte Links in Beiträgen, Bildern und Plugin-Einstellungen stehen weiter in der Datenbank. Die ersetzt du mit wp search-replace oder einem Plugin wie Better Search Replace, niemals per einfachem Suchen und Ersetzen in der SQL-Datei. Zum Schluss leitest du die alte Adresse per 301 auf die neue um.
Typische Anlässe sind ein Umzug auf eine neue Domain, der Wechsel von http:// auf https://, der Wechsel zwischen Adresse mit und ohne www oder das Verschieben aus einem Unterverzeichnis. Das Vorgehen ist immer ähnlich. Erstelle vorher unbedingt ein vollständiges Backup.
Schritt 1: Neue Adresse vorbereiten
- Die neue Domain muss auf deinen Webspace zeigen (DNS-Eintrag oder Domain im Hosting-Paket angelegt).
- Für HTTPS muss ein gültiges SSL-Zertifikat aktiv sein, zum Beispiel ein kostenloses von Let’s Encrypt. Prüfe das, indem du
https://neue-domain.deim Browser aufrufst, bevor du WordPress umstellst. - Liegen die Dateien künftig in einem anderen Ordner, kopiere sie vorher dorthin.
Schritt 2: Adresse in WordPress ändern
Öffne Einstellungen → Allgemein und trag in beiden Feldern die neue Adresse ein, ohne Schrägstrich am Ende, zum Beispiel https://www.neue-domain.de. Nach dem Speichern wirst du abgemeldet und meldest dich unter der neuen Adresse wieder an. Unterscheiden sich die beiden Felder bei dir, weil WordPress in einem Unterordner liegt, lies vorher WordPress im Unterverzeichnis über die Hauptdomain aufrufen.
Sind die Felder ausgegraut, sind die Adressen in der wp-config.php fest eingetragen. Dann änderst du sie dort:
define( 'WP_HOME', 'https://www.neue-domain.de' );
define( 'WP_SITEURL', 'https://www.neue-domain.de' );
Diese beiden Zeilen helfen auch, wenn du dich nach einer falschen Eingabe ausgesperrt hast. Trag sie oberhalb der Zeile „That’s all, stop editing“ ein, melde dich an, korrigiere die Einstellungen und entferne die Zeilen wieder, wenn du sie nicht dauerhaft brauchst.
Schritt 3: Alte Adressen in der Datenbank ersetzen
In Beiträgen, Bildpfaden, Menüs, Widgets und Plugin-Optionen steht die alte Adresse weiterhin. Das Problem: Viele Plugins speichern Einstellungen serialisiert. Dabei steht die Länge jeder Zeichenkette mit in den Daten, etwa s:21:"http://alte-domain.de". Ersetzt du die Domain blind in einer SQL-Datei, stimmt die Längenangabe nicht mehr und WordPress verwirft die komplette Einstellung. Widgets verschwinden, Theme-Optionen sind weg.
Nutze deshalb ein Werkzeug, das serialisierte Daten korrekt anpasst:
- Ohne SSH: Plugin Better Search Replace installieren, unter Werkzeuge alte und neue Adresse eintragen, alle Tabellen auswählen, zuerst den Probelauf starten, dann echt ausführen und das Plugin danach wieder entfernen.
- Mit SSH: WP-CLI, siehe Abschnitt für Fortgeschrittene.
Ersetze die Adresse immer vollständig mit Protokoll, also http://alte-domain.de durch https://www.neue-domain.de. Suchst du nur nach alte-domain.de, erwischst du womöglich auch E-Mail-Adressen wie info@alte-domain.de.
Schritt 4: Alte Adresse weiterleiten
Damit Besucher, Lesezeichen und vor allem Backlinks nicht ins Leere laufen, leitest du jede alte URL per 301 auf die entsprechende neue um. Auf Apache-Servern geht das mit einer .htaccess auf der alten Domain:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?alte-domain\.de$ [NC]
RewriteRule ^(.*)$ https://www.neue-domain.de/$1 [R=301,L]
Auf nginx-Servern erledigt das ein eigener server-Block für die alte Domain:
server {
listen 80;
listen 443 ssl;
server_name alte-domain.de www.alte-domain.de;
# ssl_certificate ... (Zertifikat der alten Domain)
return 301 https://www.neue-domain.de$request_uri;
}
Wichtig: Die alte Domain braucht weiterhin ein gültiges Zertifikat, sonst sehen Besucher, die https://alte-domain.de aufrufen, eine Zertifikatswarnung statt der Weiterleitung. Lass die Weiterleitungen mindestens ein Jahr bestehen, besser dauerhaft.
Für den reinen Wechsel auf HTTPS bieten die meisten Hoster im Kundenmenü eine Option „HTTPS erzwingen“ oder „SSL-Weiterleitung“ an. Melde bei einem Domainwechsel die neue Adresse zusätzlich in der Google Search Console an und nutze dort das Werkzeug zur Adressänderung.
Für Fortgeschrittene: URL-Wechsel mit WP-CLI
wp search-replace ersetzt in allen Tabellen und kümmert sich um serialisierte Daten. Starte immer mit einem Probelauf:
# Sicherung
wp db export vor-url-wechsel.sql
# Probelauf: zeigt nur an, wie viele Ersetzungen es gäbe
wp search-replace 'http://alte-domain.de' 'https://www.neue-domain.de' --all-tables-with-prefix --dry-run
# Echt ausführen, GUID-Spalte auslassen
wp search-replace 'http://alte-domain.de' 'https://www.neue-domain.de' --all-tables-with-prefix --skip-columns=guid
# Caches leeren und Permalinks neu schreiben
wp cache flush
wp rewrite flush
Die Spalte guid lässt du aus, weil sie laut WordPress-Dokumentation eine dauerhafte Kennung ist und von Feed-Readern genutzt wird. Bei Multisite kommt der Parameter --network dazu, außerdem müssen die Tabellen wp_site und wp_blogs angepasst werden.
Prüfliste nach dem Wechsel
| Prüfen | So geht es |
|---|---|
| Alte URLs leiten per 301 weiter | Drei alte Adressen (Startseite, Beitrag, Bild) im privaten Fenster aufrufen, Browser-Entwicklertools → Netzwerk zeigt Status 301 |
| Keine alten Adressen mehr in der Datenbank | wp search-replace 'alte-domain.de' 'x' --dry-run muss 0 Treffer zeigen (außer bewusst behaltene E-Mail-Adressen) |
| Kein Mixed Content | Schloss-Symbol im Browser, Konsole ohne Warnungen |
| Login und Formulare funktionieren | Abmelden, neu anmelden, Kontaktformular testen |
| Suchmaschinen informiert | Neue Property in der Search Console, Sitemap einreichen, Adressänderung melden |
| Externe Dienste angepasst | CDN, Analytics, Zahlungs- und Newsletter-Dienste, API-Schlüssel mit Domain-Bindung |
Typische Probleme nach dem URL-Wechsel
- Endlose Weiterleitung („Zu viele Weiterleitungen“): Meist widersprechen sich die Einstellungen und eine HTTPS-Weiterleitung beim Hoster oder in einem CDN. Prüf beide Adressfelder und schalte doppelte Weiterleitungen ab.
- Gemischte Inhalte (Mixed Content): Das Schloss im Browser fehlt, weil Bilder oder Skripte noch per
http://geladen werden. Suche und ersetze die alten http-Adressen wie oben beschrieben. - Beiträge liefern 404: Speichere unter Einstellungen → Permalinks einmal neu. Hilft das nicht, lies Permalinks geändert, kein Zugriff mehr.
- Layout zerschossen: Page-Builder und Themes legen oft eigene CSS-Dateien mit der alten Adresse ab. Leere den Cache des Plugins oder lass die Dateien in dessen Einstellungen neu erzeugen.
Alle Einstellungsseiten erklärt WordPress-Einstellungen im Überblick. Weitere Antworten zu Einstellungen findest du im Bereich Konfiguration & Einstellungen.
Passend dazu: Landest du nach einer Adressänderung immer wieder auf dem Login-Formular, lies Login ins Backend klappt nicht mehr.
Frage dazu? Hängt dein Umzug oder der Wechsel auf HTTPS? Frag im Forum „Allgemeine Fragen zu WordPress“: Zum WPDE-Forum
Häufige Fragen
Was ist der Unterschied zwischen WordPress-Adresse und Website-Adresse?
Die WordPress-Adresse sagt, wo die WordPress-Dateien liegen, die Website-Adresse, unter der Besucher die Seite aufrufen. In den meisten Installationen sind beide gleich.
Verliere ich beim Domainwechsel meine Google-Rankings?
Mit sauberen 301-Weiterleitungen für jede einzelne URL und der Adressänderung in der Search Console werden Rankings in der Regel übertragen. Kurzfristige Schwankungen sind normal.
Kann ich die URL direkt in phpMyAdmin ändern?
Ja, für die beiden Grundeinstellungen: In der Tabelle wp_options stehen sie in den Zeilen siteurl und home. Für alle anderen Vorkommen der alten Adresse brauchst du ein Werkzeug, das serialisierte Daten beherrscht.