Błąd po aktualizacji motywu najczęściej wynika z konfliktu kodu albo niezgodności z wersją PHP. Zacznij od kopii plików i bazy, a następnie zmień nazwę folderu motywu przez Menedżer plików hostingu lub FTP. WordPress wyłączy wadliwy motyw i spróbuje uruchomić motyw domyślny, co zwykle przywraca dostęp do panelu bez usuwania treści.
Jaki błąd pojawił się po aktualizacji motywu?
Objaw pomaga wybrać pierwszy krok. Błąd krytyczny i biały ekran zwykle wskazują na problem z PHP, motywem, wtyczką albo limitem pamięci. Rozjechany układ oznacza częściej konflikt CSS lub JavaScriptu, a nie całkowite zatrzymanie WordPressa.
| Objaw | Prawdopodobna przyczyna | Pierwszy krok |
|---|---|---|
| Biały ekran | Błąd PHP, konflikt kodu lub przekroczony limit pamięci | Sprawdź logi i tymczasowo wyłącz motyw przez zmianę nazwy folderu |
| Komunikat „W witrynie wystąpił błąd krytyczny” | Konflikt motywu z wtyczką, WordPressem albo wersją PHP | Sprawdź e-mail od WordPressa i tryb odzyskiwania |
| Rozjechany wygląd strony | Konflikt CSS lub JavaScriptu po aktualizacji | Wyczyść cache i sprawdź zgodność motywu z wtyczkami |
Co zrobić przed naprawą?
Nie usuwaj od razu motywu ani nie przywracaj starej kopii całej strony. Najpierw zabezpiecz aktualny stan. W sklepie internetowym jest to szczególnie ważne, ponieważ przywrócenie starszej bazy może usunąć nowe zamówienia, konta klientów lub inne świeże dane.
Przed zmianami przygotuj:
- Kopię bazy danych wykonaną w panelu hostingu lub przez narzędzie dostępne na serwerze.
- Kopię plików, zwłaszcza katalogu
wp-contentoraz plikuwp-config.php. - Dostęp do Menedżera plików hostingu albo dane FTP.
- Informację o tym, co zmieniło się bezpośrednio przed awarią, na przykład wersję motywu i ostatnio aktualizowane wtyczki.
Nie edytuj plików bez kopii oryginału. Jeśli zmieniasz nazwę folderu lub modyfikujesz wp-config.php, zachowaj poprzednią wersję. Ułatwi to powrót do stanu sprzed próby naprawy.
Jak naprawić błąd po aktualizacji motywu krok po kroku?
1. Sprawdź wiadomość od WordPressa
Przy błędzie krytycznym WordPress może wysłać administratorowi wiadomość z opisem awarii i linkiem do trybu odzyskiwania. Link pozwala wejść do panelu w ograniczonym trybie, w którym problematyczny motyw lub wtyczka jest tymczasowo wyłączona.
Jeśli wiadomość wskazuje nazwę motywu, zaloguj się przez podany odnośnik i przełącz go na motyw domyślny. Gdy e-mail nie dotarł albo link wygasł, przejdź do kolejnego kroku.
2. Wyłącz motyw przez Menedżer plików lub FTP
Menedżer plików znajduje się zwykle w panelu hostingu. Alternatywą jest FTP, czyli połączenie z serwerem za pomocą klienta takiego jak FileZilla. Nie potrzebujesz dostępu do kokpitu WordPressa.
- Otwórz katalog instalacji WordPressa, a następnie
wp-content/themes. - Znajdź folder aktywnego motywu, na przykład
nazwa-motywu. - Zmień jego nazwę, dodając na końcu na przykład
-old. - Odśwież stronę i spróbuj wejść do
/wp-admin.
Zmiana nazwy sprawia, że WordPress nie znajduje aktywnego motywu. Jeżeli w instalacji znajduje się motyw domyślny, system może przełączyć się na niego automatycznie. Strona może wyglądać inaczej, ale treści, wpisy i produkty pozostają w bazie.
Jeśli panel nadal jest niedostępny, sprawdź także katalog wp-content/plugins. Aktualizacja motywu mogła ujawnić konflikt z wtyczką, na przykład page builderem, wtyczką cache albo narzędziem zmieniającym funkcje motywu. Zmień nazwę tylko folderu podejrzanej wtyczki, a nie całego katalogu wp-content.
3. Włącz bezpieczne logowanie błędów
Tryb WP_DEBUG zapisuje informacje o błędach. Włącz go w pliku wp-config.php, znajdującym się w głównym katalogu WordPressa. Wstaw lub zmień konfigurację przed komentarzem /* That's all, stop editing! Happy publishing. */:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Ustawienie WP_DEBUG_DISPLAY na false jest ważne, ponieważ szczegóły błędu nie pojawią się publicznie na stronie. Po zapisaniu pliku odtwórz problem, a następnie otwórz wp-content/debug.log.
Wpis może wskazać konkretny plik i linię, na przykład w katalogu motywu lub wtyczki. Jeśli ścieżka prowadzi do functions.php, sprawdź ostatnio dodany kod. Literówka, brakujący nawias albo niezamknięty cudzysłów może zatrzymać wykonywanie PHP.
Po zakończeniu diagnostyki wyłącz debugowanie albo ustaw wartości:
define( 'WP_DEBUG', false );
define( 'WP_DEBUG_LOG', false );
define( 'WP_DEBUG_DISPLAY', false );
4. Sprawdź limit pamięci PHP
Jeśli w logu widzisz komunikat Allowed memory size exhausted, problemem może być limit pamięci PHP. W wp-config.php możesz spróbować ustawić:
define( 'WP_MEMORY_LIMIT', '256M' );
Wstaw tę linię przed wspomnianym komentarzem kończącym edycję pliku. Zadziała tylko wtedy, gdy konfiguracja hostingu pozwala WordPressowi użyć wyższego limitu. Niektóre serwery wymagają zmiany wartości memory_limit w panelu hostingu lub pliku php.ini. Jeśli nie masz pewności, poproś hosting o sprawdzenie limitu zamiast modyfikować konfigurację w ciemno.
Co zrobić, gdy standardowa naprawa nie działa?
Jeżeli nie masz dostępu do plików albo zmiana nazwy folderu nie przełączyła motywu, możesz zmienić aktywny motyw bezpośrednio w bazie danych. To metoda zaawansowana, dlatego wykonaj kopię bazy przed rozpoczęciem.
- Otwórz phpMyAdmin w panelu hostingu i wybierz bazę używaną przez WordPress.
- Otwórz tabelę
wp_options, pamiętając, że prefiks może być inny niżwp_. - Znajdź wpisy
templateorazstylesheet. - Zmień ich wartości na nazwę folderu zainstalowanego motywu domyślnego i zapisz zmiany.
Motyw domyślny musi faktycznie znajdować się w katalogu wp-content/themes. Nie wpisuj nazwy wyświetlanej w panelu, lecz nazwę jego folderu. Błędna wartość może spowodować kolejny problem z ładowaniem strony.
Jeśli awaria zaczęła się dokładnie po aktualizacji, rozważ rollback, czyli cofnięcie wyłącznie motywu do poprzedniej wersji. Przy sklepie jest to zwykle bezpieczniejsze niż przywracanie całej bazy, bo nie usuwa zamówień zapisanych po wykonaniu ostatniego backupu. Pełny backup plików i bazy przywracaj dopiero wtedy, gdy naprawa komponentu nie przynosi efektu.
Co sprawdzić po odzyskaniu strony?
Powrót strony głównej nie oznacza jeszcze, że wszystko działa. Przejdź przez te testy:
- Wyłącz tryb debugowania i sprawdź, czy komunikaty techniczne nie są widoczne publicznie.
- Otwórz stronę główną, kilka podstron, wpisów i archiwów.
- Sprawdź logowanie, formularz kontaktowy oraz wysyłkę wiadomości.
- W sklepie wykonaj test koszyka, płatności i zapisu zamówienia.
- Wyczyść cache motywu, wtyczek, serwera i CDN, jeśli są używane.
- Wykonaj nową kopię plików i bazy po przywróceniu poprawnego działania.
Nie przywracaj od razu wadliwej wersji motywu na stronie produkcyjnej. Najpierw sprawdź, czy producent wydał poprawkę, zweryfikuj zgodność z używaną wersją PHP i przetestuj aktualizację na kopii stagingowej. Gdy awarie powtarzają się po kolejnych aktualizacjach, problem może dotyczyć nie tylko motywu, lecz także starego kodu wtyczek, konfiguracji serwera albo zbyt niskiego limitu zasobów.
Najbezpieczniejsza kolejność to backup, identyfikacja błędu, tymczasowe wyłączenie motywu, analiza logów i dopiero później aktualizacja lub rollback. W większości przypadków dane strony pozostają nienaruszone, ponieważ awaria blokuje wykonywanie kodu, a nie usuwa treść z bazy.