Biały ekran to błąd krytyczny bez komunikatu - strona się wysypała, a WordPress nie zdążył nawet powiedzieć dlaczego. W żargonie mówi się na to „white screen of death”: zamiast witryny jest pusta, biała strona, czasem tylko na części podstron, czasem wszędzie, bywa że razem z panelem administracyjnym. Mechanika awarii jest ta sama co przy błędzie krytycznym z komunikatem - kod PHP przerwał pracę - tylko tym razem nie dostajesz nawet maila ratunkowego ani wskazówki na ekranie. Nowsze wersje WordPressa zwykle pokazują komunikat; czysta biel oznacza najczęściej starszą instalację, wyłączone raportowanie błędów albo awarię na tyle wczesną, że silnik nie zdążył wystartować.
Dane - wpisy, produkty, zamówienia - są w bazie i ten błąd ich nie rusza. Zadanie polega na tym, żeby dowiedzieć się, co dokładnie pękło, a potem to wyłączyć.
Najpierw szybkie sprawdzenie
Zanim wejdziesz w pliki, trzy rzeczy na 2 minuty:
- Czy panel
/wp-admindziała? Jeśli tak - masz błąd tylko na froncie; niemal na pewno winny jest motyw albo wtyczka renderująca stronę. Wejdź w Wygląd → Motywy i przełącz na domyślny motyw na chwilę - Czy biały ekran jest wszędzie, czy na jednej podstronie? Jedna podstrona wskazuje na konkretny element (formularz, galerię, wtyczkę używaną tylko tam); wszystko - na coś globalnego
- Co się działo tuż przed? Aktualizacja, nowa wtyczka, edycja pliku motywu, zmiana PHP na hostingu? To jest Twój główny podejrzany - awarie rzadko przychodzą znikąd
Włącz komunikat zamiast bieli
Największy problem białego ekranu to brak informacji. Da się to zmienić jednym wpisem: w pliku wp-config.php (główny katalog strony, edycja przez FTP albo menedżer plików hostingu) znajdź linijkę z WP_DEBUG i ustaw ją na true - a jeśli jej nie ma, dodaj przed komentarzem „That’s all, stop editing”:
define( 'WP_DEBUG', true );
Odśwież stronę. Zamiast bieli powinien pojawić się konkretny błąd z nazwą pliku - np. wp-content/plugins/nazwa-wtyczki/... - i to jest odpowiedź, kto zawinił. Po naprawie ustaw z powrotem na false, bo komunikaty błędów na żywej stronie to prezent dla włamywaczy.
Co pomaga: jeśli boisz się edytować
wp-config.php, tę samą informację znajdziesz w logach błędów PHP w panelu hostingu - sekcja „Logi”. Ostatnie wpisy z godziną awarii wskazują winowajcę bez dotykania żadnego pliku. To ta sama technika, którą opisuję przy błędzie 500.
Wyłącz winowajcę
Dalej procedura jest identyczna jak przy błędzie krytycznym - rozpisana krok po kroku tutaj. W skrócie:
- Wtyczka wskazana w błędzie: w
wp-content/pluginszmień nazwę jej folderu - strona wstaje od razu - Błąd wskazuje na motyw: w
wp-content/themeszmień nazwę folderu aktywnego motywu; WordPress przełączy się na domyślny - Błąd typu „memory exhausted”: wyczerpała się pamięć PHP - w panelu hostingu podnieś
memory_limit(256 MB to rozsądne minimum dla strony ze sklepem) - Nic z powyższych: możliwe uszkodzone pliki po przerwanej aktualizacji - pliki samego WordPressa można bezpiecznie nadpisać świeżą kopią z wordpress.org (bez folderu
wp-content!)
Biały ekran tylko czasami albo tylko w panelu
Dwa warianty specjalne. Biel tylko w panelu administracyjnym (front działa) to zwykle konflikt wtyczki działającej wyłącznie w zapleczu albo za mały limit pamięci - panel potrafi potrzebować go więcej niż front. Biel od czasu do czasu - przy większym ruchu, po nocnym backupie - to objaw wyczerpujących się zasobów serwera, nie zepsutego kodu; tu diagnoza wymaga logów z dłuższego okresu i to typowa rzecz, którą wyłapuje monitoring w ramach stałej opieki, zanim klienci zaczną trafiać na pustkę.
Najczęstsze pytania
Czym różni się biały ekran od błędu krytycznego? To ta sama rodzina awarii. „Błąd krytyczny” to nowszy WordPress, który zdążył złapać problem i pokazać komunikat (plus wysłać maila ratunkowego). Biały ekran to ten sam typ wysypki bez żadnej informacji - dlatego pierwszym krokiem jest zdobycie komunikatu przez tryb debugowania albo logi.
Czy odwiedzający widzą to samo co ja? Zwykle tak, ale sprawdź w trybie prywatnym przeglądarki - pamięć podręczna (Twoja albo wtyczki cache) potrafi jednym pokazywać białą stronę, a innym normalną. Jeśli używasz wtyczki cache, wyczyść ją po naprawie, inaczej biel będzie „straszyć” jeszcze godzinami.
Ile trwa naprawa? Z komunikatem błędu w ręku - zwykle godziny. Bez dostępu do FTP i panelu hostingu ani specjalista, ani nikt inny nie zdziała wiele, więc pierwszą rzeczą, jaką warto mieć zebraną, są dostępy. Wycenę podaję po obejrzeniu, na piśmie.
Powiązane: Błąd krytyczny WordPressa · Błąd 500 w WordPress · Stała opieka nad stroną