WP Login Redirect

Ein Problem mit dem man bei WordPress häufig zu tun hat, ist das Login Redirect Phänomen. WordPress lässt einen trotz richtiger Eingabe des Benutzernamens und Kennwort nicht mehr ins Backend. Es wird einfach immer die Login-Seite neu präsentiert und das ohne Fehlermeldung. Oft ist ein Plugin schuld oder die Browsereinstellungen lassen keine Cookies zu.

Bei mir war es eine Weiterleitung auf eine andere Domain, die logischerweise dazu führte, dass WP zwar in der richtigen Konfiguration aber unter anderer Domain dazu veranlasste, den Zugang zu sperren.

Abhilfe schafft ein kleiner Eintrag in die WP-Config. Hier einfach die Seiten URL mit nachfolgendem Code ergänzen:

define(‚WP_HOME‘,’http://xyz.de‘);
define(‚WP_SITEURL‘,’http://xyz.de‘);

xyz.de ist natürlich mit der aktuellen URL zu ersetzten. WP-Config wieder auf den Server laden und schon müsste WordPress den Zugang freigeben.

Falls es nicht eine neue Domain sein sollte, mit der WordPress nichts anzufangen weiß, ist meist ein fehlerhaftes Plugin Schuld. In dem Fall per ftp alle Plugins löschen, anschließend einloggen und ein Plugin nach dem anderen wieder installieren. Bei jedem Plugin neu einloggen. Irgendwann sollte so der Übeltäter ausfindig gemacht werden können.

WP Datenbanksicherung

In WordPress gibt es die Export/ Importfunktion für Beiträge aus einem anderen Blog, möglich ist damit natürlich auch eine Sicherung, die beim Crah neu eingespielt werden kann. Auch gibt es zahlreiche Plugins für die Datensicherung der Artikel, Bilder und Kommentare. Die einfachste Methode scheint mir das Exportieren und Importieren der gesamten Datenbank über phpMyAdmin.

Dazu die Zieldatenbank beim Hoster über phpMyAdmin aufrufen, in der Menüzeile auf exportieren klicken und die Backup-Datei als .sql auf dem PC speichern. Im Anschluss kann dann die Backup-Datei in die neue Datenbank eingepflegt werden.

Die heruntergeladene Datei mit einem Texteditor öffnen und unter der Zeichenfolge CREATE DATABASE %Datenbankname% oder USE %Datenbankname den Namen der neuen Datenbank eintragen und abspeichern

Dann die neue Datenbank unter phpMyAdmin aufrufen, im Menü auf Importieren klicken und die geänderte .sql Datei auswählen. Der Vorteil ist, dass in der Regel tatsächlich alle Beiträge, Bilder und Kommentare übernommen werden.

Wenn alles funktioniert, kann die alte Datenbank gelöscht werden. Diese Vorgehensweise empfiehlt sich übrigens auch bei einem Update der MySQL-Version.

Chrome zeigt Google Schriften nicht an

Kleine Ursache, große Wirkung. Einige Browser (Chrome, IE, Opera) zeigen die über die Stylesheets eingebundenen Schriften nicht an, wenn nicht sichergestellt ist, dass der Importbefehl, also beispielsweise:
@import url('https://fonts.googleapis.com/css?family=Work+Sans:200,300&subset=latin-ext');

als erste Anweisung in der style.css des child-themes steht.

Webseite ohne www aufrufen

Für den Aufruf der Webseite ohne das www wird in der Regel in der .htaccess-Datei eine Umleitung festgelegt.

Mit dem Codeschipsel:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.peter-lohren\.de$
RewriteRule ^(.*)$ https://peter-lohren.de/$1 [L,R=301]

sollte auf die Seite peter-lohren.de ohne das lästige www umgeleitet werden.

Die .htaccess muss dabei im root Verzeichnis der Webseite liegen. Bei mir allerdings funktionierte die Umleitung mittels .htaccess nicht, WordPress zeigte nach Aufruf eine Seite mit Umleitungsfehler. Warum auch immer.

Statt der .htaccess ist es allerdings auch möglich, mittels der config.php den Aufruf der Webseite ohne www zu realisieren. Dazu einfach die url in der config.php definieren, die es denn sein soll:

/**
* Webseite ohne www
*/
define('WP_HOME','https://peter-lohren.de');
define('WP_SITEURL','https://peter-lohren.de');

Bei mir jedenfalls hat das funktioniert. Bei Aufruf von www.peter-lohren.de leiten alle Browser sofort auf die Variante ohne www um.

WordPress in einem anderen Verzeichnis

Manchmal möchte man seinen WordPress Blog in einem anderen Verzeichnis haben, also z.b. www.meineseite.de/blog. Das stellt kein großes Problem dar. Die einfachste Variante ist, per ftp-client, zb. Filezilla sämtliche Dateien vom Server in ein zuvor angelegten Ordner /blog herunter zu laden.

Anschließend die Dateien im Hauptverzeichnis auf dem Server löschen und den Ordner /blog als Ganzes wieder ins Hauptverzeichnis hochladen. Im Anschluss auf der Seite des Anbieters die Datenbank aufrufen wp_optionen aufrufen und in den Tabellen siteurl und home die Pfadangabe entsprechend ändern. Beispielsweise von www.meinedomain.de in www.meinedomain.de/blog.

Bei Verwendung eines Child-Themes ist in der funktions.php bzw. in den stylesheets die Pfadangabe auch noch zu ändern. Zu guter Letzt noch die Permalinks einmal auf einfach stellen, speichern und anschließend wieder auf die gewünschte Einstellung und abspeichern. das sollte es gewesen sein.