@Blubberfisch
Unter Einstellungen > Allgemein können zwei URL’s eingestellt werden. Die obere, also die WordPress-Adresse (URL), gibt an, wo auf dem Server die WordPress-Dateien liegen. Due untere, die Website-Adresse (URL), gibt hingegen an, wo die index.php liegt, über die WordPress aufgerufen wird.
(Das ist ganz praktisch, weil man so WordPress in einem separaten Unterverzeichnis wp ablegen kann, die index.php aber in das Web-Rootdirectory kopiert und in der Datei den Pfad zu WordPress anpasst. So ist die Website auch dann unter http://domain.de erreichbar, wenn die WordPress-Dateien in einem Unterverzeichnis liegen – das nur mal am Rande.)
Diese Einstellungen werden direkt in der Navigation verwendet. Was aber dadurch nicht geändert wird, sind die URL’s zu allen eingebundenen Mediendateien und Links in benutzerdefinierten Menüs.
Für die Mediendateien werden (zur Suchmaschinenoptimierung) absolute Pfade verwendet, die auch so in der Datenbank abgelegt werden. (Die Sache wird zusätzlich kompliziert, weil diese URL’s teilweise als serialisierte Daten in ein einziges Datenfeld eingetragen werden. Hier reicht also auch nicht, manuell Daten in der Datenbank anzupassen.)
Die Lösung ist das bereits genannte Script (hier nochmal der richtige Link), das die Änderungen in allen Datenbankfelder, auch bei serialisierten Daten, vornimmt.
@elkek.
Versucht man über den Link http://www.domain.de/wp-admin auf das Back End der WordPress-Installation zurück zu greifen, wird zunächst geprüft, ob der Nutzer bereits angemeldet ist. Falls nicht, wir er/sie zum Login-Formular weitergeleitet; in der URL steht etwas von „reauth“ (also sinngemäß erneute Authentifizierung = Anmeldung) und es wird die vorher eingestellte URL verwendet. Stimmt diese URL nicht … Pech gehabt. 🙂
Man kann allerdings auch versuchen, sich direkt über http://www.domain.de/wp-login.php anzumelden. Mitunter sieht das etwas kurios aus, weil auch das Stylesheet nicht gefunden wird, klappt dann aber in den meisten Fällen und man kann seinen Fehler in Einstellungen > Allgemein korrigieren. Wenn das aber so gar nicht klappen will, kann man per FTP-Programm oder über das Dateiverwaltungsmenü seines Webhosts die wp-config.php herunterladen und vor „Stop editing here“ folgendes hinzufügen:
define('RELOCATE', true);
Lädt man diese wp-config.php dann wieder hoch, sollte spätestens jetzt auch die Anmeldung wieder klappen und man kann erneut über Einstellungen > Allgemein versuchen, die richtige URL einzugeben.
Und weil wir gerade dabei sind: Es gibt diverse Blog-Beiträge, die erklären, wie man durch eine Weiterleitungsregel in der Webserver-Konfigurationsdatei .htaccess Besucher von Webadressen mit „www“ auf URL’s ohne „www“ umleiten kann. Stellt man bei einer solchen Umleitung unter Einstellungen > Allgemein aber URL’s mit „www“ ein und hat gleichzeitig eine Umleitung in der .htaccess definiert, ist die Verwirrung komplett und die Anmeldung wird … etwas schwierig. 😉
Und weil das so viele Informationen auf einmal waren hier nochmal die wichtigsten Punkte:
- Anmeldung im Back End immer über
wp-login.php
- Es reicht nicht, Änderungen der URL im Menü Einstellungen oder in der Datenbanktabelle
wp_options vorzunehmen, weil die URL an viel mehr Stellen vorkommt. Besser: das Script von Interconnectit verwenden.
- Hat man sich versehentlich ausgesperrt, in die
wp-config.php folgendes eintragen: define('RELOCATE', true); (und wenn alles wieder gut ist und die Sonne scheint wieder löschen).
- Darauf achten, dass Weiterleitungsregeln in der
.htaccess und Einstellungen > Allgemein sich nicht widersprechen.
Viel Erfolg! 😉