Kategorie “WordPress”

Gesammelte Beiträge zum Thema WordPress

Wenn beim Aufruf eures WordPress Auftritts nur noch eine weiße Seite angezeigt wird und auch der Admin Bereich nicht mehr aufrufbar ist, spricht man vom berühmten WordPress “White Screen of Death”.  Dieser ist das Ergebnis eine fatalen PHP Fehlers, der euren Auftritt zum Abstürzen gebracht hat. Häufig tritt dieses Phänomen unmittelbar nach Änderungen an WordPress, dem aktiven Theme oder Plugins auf.

Um das Problem lösen zu können, wird zwingend FTP Zugang zum Auftritt benötigt. Falls ihr nicht wißt, wie dieser eingerichtet wird, hilft euer Webhoster sicherlich gerne weiter.

WordPress Debug Modus

Zunächst sollte der Fehler eingegrenzt werden, indem der WordPress Debug Modus eingeschaltet wird. Der Debug Modus erlaubt das Anzeigen von Fehlermeldungen, die wiederum Aufschluss darüber geben, in welchem Programmteil sich der Fehler verbirgt.

Ruft hierzu die Datei wp-config.php im Hauptverzeichnis der WordPress Installation auf dem FTP-Server mit einem beliebigen Textprogramm auf (Word ist kein Textprogramm!). Sucht jetzt nach der Zeile

define(‚WP_DEBUG‘, false);

und ändert diese zu

define(‚WP_DEBUG‘, true);

Speichert die Datei auf eurem Server und ruft eure Seite im Browser erneut auf. Höchstwahrscheinlich wird jetzt eine Fehlermeldung angezeigt.

Häufige Fehlermeldungen und ihre Bedeutung

Allowed memory size exhausted: Weist darauf hin, dass das PHP Memory Limit ausgeschöpft ist. In diesem Fall solltet ihr euren Webhoster bitten, den Wert heraufzusetzen. Häufig reichen 256M aus.

Call to undefined function: Hier handelt es sich um einen Programmierfehler im Theme oder Plugin. Die Pfadangabe zeigt an, um welches Theme oder Plugin es sich handelt, z.B. ../wp-content/plugins/pluginxyz oder ../wp-content/themes/themexyz. Durch das Umbenennen des entsprechenden Ordners lassen sich Themes und Plugins deaktivieren, so dass eure Seite wieder aufrufbar sein sollte.

Cannot modify header information – headers already sent: Auch hier liegt mit hoher Wahrscheinlichkeit der Fehler im Plugin/Theme, häufig verursacht durch Leerzeichen am Anfang oder Ende einer Datei, vor. Wie oben beschrieben hilft auch hier das Umbenennen der entsprechenden Ordner.

Maximum execution time exhausted: Ein durch Plugins oder Themes angestoßenes Script erhält nicht genügend Zeit, um ausgeführt zu werden. Bittet euren Webhoster, die max_execution_time heraufzusetzen.

Im Debug Modus wird keine Fehlermeldung ausgegeben

Falls der Debug Modus wider Erwarten keine Fehlermeldung anzeigt, solltet ihr versuchen, den Fehler selber einzugrenzen. Hierzu benennt zunächst den plugins Ordner (../wp-content/plugins) um in plugins_old. Loggt euch daraufhin im WordPress Admin Bereich ein, sämtliche Plugins sollten jetzt deaktiviert sein. Anschließend könnt ihr den Ordner wieder umbenennen zu plugins.

Aktiviert jetzt im Admin Bereich jedes Plugin eines nach dem anderen, bis der Fehler wieder auftritt. Auf diese Weise erfahrt ihr, wer der Verursacher des Problems ist.

Nach der Behebung des Problems solltet ihr in der wp-config.php Datei

define(‚WP_DEBUG‘, true);

wieder ändern zu

define(‚WP_DEBUG‘, false);

Wir hoffen, dass ihr mit Hilfe des Artikels eure Seite schnell wieder zum Laufen gebracht habt. Bei weiteren Fragen helfen wir euch natürlich gerne weiter.

Falls Ihr Probleme mit dem Upload von Bildern in die WordPress Mediathek haben solltet, empfehlen wir folgende Checkliste zu beachten:

  1. Ihr nutzt ein falsches Bildformat
    Achtet beim Hochladen von Bilddateien darauf, dass es sich um die gängigen Webformate  .jpg, .gif oder .png handelt. Andere Formate wie z.B. .psd, .esp, .tif oder .bmp funktionieren nicht. Häufig ist dieser Fehler daran zu erkennen, dass der Browser die Bilder schlichtweg nicht darstellt und/oder keine Thumbnails in der Mediathek generiert werden können.Lösung: Bilder durch sinnvolles Konvertieren in ein web-taugliches Format bringen.
  2. Der Speicherplatz des Webpaketes eures Hosters ist voll
    Auch ein vermeintlich so offensichtlicher Fehler kommt in der Praxis nicht selten vor. Typischerweise bricht der Upload hier ohne Fehlermeldung einfach ab.Lösung: Falls möglich Speicherplatz durch das Löschen ungenutzter Dateien in der Mediathek schaffen oder das Hostingpaket erweitern.
  3. Es befinden sich Sonderzeichen im Dateinamen
    Nicht alle Browser interpretieren Sonderzeichen, Leerzeichen und Umlaute gleich. Insbesondere Safari und Chrome scheinen hier erfahrungsgemäß weniger tolerant zu sein als FireFox. Ein sehr typisches Symptom für diesen Fehler ist, dass die Bilder nicht in allen Browsern angezeigt werden, obwohl diese auf dem Server liegen.Lösung: Dateinamen sollten weder Sonderzeichen (+,!,# etc), Leerzeichen noch Umlaute (ä, ö, ü, ß) verwenden.
  4. Die Rechte des wp-content/uploads Ordner stimmen nicht
    Ein Fehler der auftreten kann, wenn eine WordPress Installation manuell durchgeführt wird, sprich, es wurden die WordPress Installations Dateien via FTP auf den Server geschoben.
    Zu erkennen ist dieser Fehler daran, dass entweder die Fehlermeldung “Die hochgeladene Datei konnte nicht nach „wp-contents/uploads“ verschoben werden.” ausgegeben wird oder die Thumbnails in der Mediathek ein “broken” Symbol zeigen. Daran Schuld sind unzureichende Schreibrechte des Upload Ordners.Lösung: Ihr solltet euch in diesem Fall via FTP auf eurem Server einloggen und im WordPress Root zu wp-contents/ navigieren. Dort selektiert ihr den Order “uploads” und gebt ihm via chmod die Rechte “755” mit. In vielen FTP Clients lassen sich die Rechte durch rechts Klick -> Informationen/Rechte o.ä neu setzen. Dateien im Ordner sollten auf “644” gesetzt sein.
  5. Das PHP Memory Limit ist zu gering
    Wenn ein Plugin oder der auch der Upload in die Mediathek den Dienst mit der Fehlermeldung  Fatal error: Allowed memory size of xxxxxx bytes exhausted quittiert, ist daran ein nicht ausreichend zugeteilter Arbeitsspeicher schuld. Insbesondere kleine shared Webhosting Pakete stellen standardmäßig nicht den kompletten Speicher zu Verfügung.Lösung: Falls ihr Zugriff auf die php.ini des Servers habt, könnt ihr hier nach “memory_limit” suchen und den Wert erhöhen. Wir empfehlen mindestens 128M, besser 256M zu verwenden. Sollte euer Hoster keinen Zugriff auf diese Datei gewähren, lässt sich der Wert auch in der wp-config.php ändern. Hier solltet ihr direkt nach dem öffnenden PHP tag <?php

    define('WP_MEMORY_LIMIT', '128M');

    eintragen.

  6. Die PHP Version ist zu niedrig
    Sollte euer Hoster PHP in einer Version kleiner als 5.3 bereitstellen, kann es sein,  dass in der Mediathek keine Bilder angezeigt werden.Lösung: Bittet euren Hoster darum, die PHP Version auf Version 7.X zu erhöhen.

Bei Fragen helfen wir euch natürlich gerne weiter.

Beim Hotlinking verwendet ein Nutzer die exakte URL zu einem Bild auf eurem Server, um dieses direkt auf der eigenen Seite, in einem Forum oder an anderer Stelle einzubinden. Leider wird das Bild bei jedem neuen Aufruf von eurem Server geladen, was abhängig von der Besucherzahl zu hohem Traffic führen kann.

Im Klartext bedeutet das nichts anderes, als das der Server gestresst wird und euch u.U. beim Erreichen des Trafficlimits sogar Kosten durch den Hoster entstehen.

Eine einfache Lösung Hotlinking zu unterbinden lässt sich über mod_rewrite in eurer htaccess Datei realisieren.

Optional könnt ihr auch ein alternatives Bild anzeigen, welches auf das Problem aufmerksam macht.

Hierzu kopiert ihr einfach folgenden Code in htaccess Datei und ersetzt die URL tradino-shop.de durch eure eigenen.

1
2
3
4
5
6
7
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https://(www\.)?tradino-shop\.de(/.*)?$ [NC]
RewriteCond %{HTTP_REFERER} !^https://www\.google\..*$ [NC]
RewriteCond %{HTTP_REFERER} !^https://www\.bing\..*$ [NC]
RewriteCond %{REQUEST_URI} !^.*alternatives-bild\.png$ [NC]
RewriteRule \.(gif|jpg|GIF|JPG|png|PNG)$ https://tradino-shop.de/alternatives-bild.png [R,L]

Erläuterung der htaccess-Datei
Nach Aktivierung der Apache ReWrite-Engine, die für sämtliche Umleitungen von Anfragen zuständig ist, wird zunächst in Zeile 2 geprüft, ob es überhaupt einen Referrer gibt.

Ab Zeile 4 werden folgenden Konditionen abgefragt:

  • ist es nicht meine eigene Seite (hier exemplarisch tradino-shop.de), die das Bild anzeigen möchte
  • sind es nicht Google oder Bing, die das Bild in der Bildersuche anzeigen möchten
  • ist es nicht mein alternatives Bild

Treffen alle Konditionen zu, greift die RewriteRule in Zeile 7 und es wird das Bild “alternatives-bild.png” unter der angegebenen URL (hier https://tradino-shop.de/alternatives-bild.png) ausgegeben.

Neben Google und Bing weitere Dienste erlauben
Sollen neben Google und Bing weitere Dienste zugelassen werden, könnt ihr die htaccess einfach um die entsprechenden Conditions erweitern.

Code Beispiel um auch Pinterest den Zugang zu gewähren:

1
2
3
4
5
6
7
8
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https://(www\.)?tradino-shop\.de(/.*)?$ [NC]
RewriteCond %{HTTP_REFERER} !^https://pinterest\.com.*$ [NC]
RewriteCond %{HTTP_REFERER} !^https://www\.google\..*$ [NC]
RewriteCond %{HTTP_REFERER} !^https://www\.bing\..*$ [NC]
RewriteCond %{REQUEST_URI} !^.*alternatives-bild\.png$ [NC]
RewriteRule \.(gif|jpg|GIF|JPG|png|PNG)$ https://tradino-shop.de/alternatives-bild.png [R,L]

Bei Fragen helfen wir euch natürlich gerne weiter.

Beta-Version von WordPress 4.4

Gerade eben wurde die zweite Beta-Version von WordPress 4.4 veröffentlicht. Ihr könnt die Entwickler-Version testen, indem ihr das Beta-Tester-Plugin installiert oder euch direkt das ZIP-Archiv herunterladet.

Wenn ihr wissen möchtet, was WordPress 4.4 neues bringt, könnt ihr das in dem Beitrag zur ersten Beta nachlesen.