To w skrócie sytuacja, w której występuje problem uniemożliwiający WordPressowi poprawne załadowanie wszystkich niezbędnych skryptów. Od wersji 5.2, WordPress nie tylko informuje o tym błędzie poprzez komunikat, ale również wysyła e-mail na adres administratora witryny. Taka wiadomość zawiera szczegółowe informacje na temat wtyczki lub motywu, które spowodowały problem, oraz link do panelu WordPressa w trybie odzyskiwania. To znaczne ułatwienie w porównaniu do poprzedniej sytuacji, kiedy po prostu pojawiał się tzw. "biały ekran śmierci".
Zobacz również Wordpress - czym jest
Spis treści:
Błąd krytyczny w WordPressie zazwyczaj wynika z nieprawidłowo działającej wtyczki, skryptu lub kodu. Może pojawić się po aktualizacji jednego z tych elementów lub być rezultatem infekcji. W przypadku infekcji zaleca się skorzystanie z usług specjalisty, który profesjonalnie pomoże wyeliminować problem.
Istotne jest ręczne aktualizowanie witryny, ponieważ automatyczne aktualizacje mogą pozbawić nas kontroli nad procesem. Taka utrata kontroli może być potencjalną przyczyną nagłego błędu krytycznego, wymagającego szybkiej interwencji i naprawy.
W praktyce błąd krytyczny może mieć różne przyczyny, ale najczęściej występuje w wyniku aktualizacji wtyczki lub motywu. To właśnie te aktualizacje często prowadzą do wystąpienia błędu, co skutkuje zablokowaniem systemu, aby zapobiec ewentualnym poważniejszym konsekwencjom. W rezultacie na stronie wyświetla się komunikat, jak poniżej.
Odkryjesz więcej informacji, próbując zalogować się do panelu administracyjnego CMS-a. Wówczas ukaże się poniższy komunikat, zawierający jednocześnie sugestię:
Tego rodzaju powiadomienia są aktywowane od wersji WordPress 5.2 i wyższych. Warto skonsultować e-maile administratora systemu, aby znaleźć informacje dotyczące przyczyny problemu. Ignorowanie tych komunikatów może skutkować ich powtarzaniem. Należy jednak pamiętać, że odnośnik do trybu odzyskiwania jest aktywny tylko przez 24 godziny od otrzymania wiadomości. Dlatego konieczne jest szybkie działanie po jej otrzymaniu. Jeśli zauważysz problem po upływie tego czasu, będziesz musiał poczekać na kolejny e-mail lub skorzystać z FTP, aby wyłączyć wadliwą wtyczkę (o ile znasz jej nazwę).
Zatem, jeśli nie posiadasz danych do FTP, dodaj konto FTP za pomocą panelu zarządzania usługą hostingową. Alternatywnie, skorzystaj z managera plików dostępnego na większości platform hostingowych. W moim przypadku wybieram to drugie rozwiązanie i postępuję następująco:
Zobacz również Jak przenieść Wordpress z katalogu na serwerze
Cóż, co jeśli to właśnie wtyczka do tworzenia kopii zapasowych jest winowajcą tego błędu krytycznego?
Nie ma obaw!
W takim przypadku instalujemy wtyczkę WP Rollback, która umożliwia przywracanie poprzednich wersji wtyczek.
Naciskamy opcję "Rollback" obok WPvivid (naszej wtyczki do tworzenia kopii zapasowych).
Po aktywowaniu funkcji Rollback, widzimy obecną zaznaczoną wersję wtyczki, a poniżej wyświetla się lista wcześniejszych wersji. Wybieramy poprzednią wersję i klikamy Rollback.
Po zainstalowaniu wybranej wersji wtyczki, możemy ją uruchomić.
Widać, że to zadanie nie jest takie trudne, a błąd krytyczny nagle staje się mniej przerażający... ;)
Jednak to jeszcze nie koniec. Inne błędy mogą występować, na przykład błąd przekierowań.
zobacz również :
WordPress oferuje szerokie możliwości optymalizacji naszej witryny pod kątem SEO, zwłaszcza dzięki elastycznej strukturze adresów URL, znanej jako bezpośrednie odnośniki, oraz umożliwia dowolne zarządzanie przekierowaniami.
Przekierowania są potężnym narzędziem w walce o wysoką pozycję w wynikach wyszukiwania Google. Jednak, jak zauważył wujek Ben z Spider-Mana, z wielką mocą wiąże się wielka odpowiedzialność.
Tutaj znowu pojawiają się te wtyczki. Ponieważ wtyczki również mogą zarządzać przekierowaniami adresów URL, czasem zdarza się, że dwie różne wtyczki zaczynają działać w przeciwnych kierunkach. Mówiąc prościej, wtyczka A przekierowuje z punktu A do punktu B, podczas gdy wtyczka B przekierowuje z punktu B do punktu A.
Efektem tego może być utworzenie pętli przekierowań. W rezultacie przeglądarka wykrywa tę pętlę i informuje nas o błędzie.
Nikt nie jest zadowolony, kiedy zaczyna się robić z niego "wariata".
Poza pętlami przekierowań możemy także napotkać błąd związany z nadmierną ilością przekierowań. Oznacza to, że wysyłamy przeglądarkę z punktu A do punktu B, z B do C, i tak dalej, co może prowadzić do problemów.
Błędy przekierowań mogą dotyczyć jedynie określonych podstron. To oznacza, że ogólnie strona może działać poprawnie, ale po wejściu na konkretną podstronę przeglądarka może nagle wyświetlić błąd.
W takim przypadku konieczne jest prześledzenie wszystkich przekierowań dla danej podstrony, co może obejmować sprawdzenie wtyczki do SEO lub dedykowanej wtyczki do przekierowań.
Jednak czasami problem z przekierowaniami dotyczy głównego adresu naszej strony, co może uniemożliwić dostęp do panelu administracyjnego WordPressa.
Warto zaznaczyć, że nie zawsze wtyczki są jedyną przyczyną błędów przekierowań. Często problem wynika ze złych ustawień Adresu WordPressa i Adresu Witryny w panelu administracyjnym WordPressa. Przykładowo, próba wymuszenia adresu z przedrostkiem HTTPS na stronie, która nie posiada zainstalowanego certyfikatu SSL, może prowadzić do tego rodzaju problemów.
Innym powszechnym problemem, niekoniecznie związanym bezpośrednio z przekierowaniami, lecz wartym uwagi, jest zwykła literówka podczas wprowadzania adresu strony.
Oczywiście, jeśli brakuje nam dostępu do panelu administracyjnego WordPressa, konieczne będzie zalogowanie się bezpośrednio na serwer za pomocą połączenia FTP.
Po udanym zalogowaniu przechodzimy do katalogu zawierającego naszego WordPressa.
Następnie otwieramy folder "wp-content".
W tym miejscu przechodzimy do folderu "themes".
Znajdujemy folder aktualnie używanego motywu, na przykład OceanWP.
Wewnątrz tego folderu poszukujemy pliku o nazwie "functions.php" i dokonujemy jego edycji.
Teraz, bezpośrednio pod pierwszą linią rozpoczynającą się od ostrego nawiasu, dodajemy dwie linie kodu, które odpowiednio modyfikują Adres URL WordPressa i Adres URL Witryny:
update_option( 'siteurl', 'https://estartupy.pl' );
update_option( 'home', 'https://estartupy.pl' );
Te adresy są identyczne z tymi, które wprowadzamy w sekcji Ustawienia w panelu administracyjnym WordPressa.
Wprowadzamy poprawne adresy tutaj, czyli jeśli wcześniej wymuszaliśmy korzystanie z protokołu HTTPS na stronie bez certyfikatu, teraz wpisujemy adres z protokołem HTTP. Ważne jest, aby upewnić się, że adresy są dokładne i bez błędów.
Następnie zapisujemy wprowadzone zmiany i zamykamy edytor tekstu. Przesyłamy zmodyfikowany plik na serwer.
Po tych krokach powinniśmy być w stanie zalogować się do naszego WordPressa. Gdy to osiągniemy, zaleca się usunięcie dodanych wcześniej dwóch linii kodu z pliku functions.php.
Zobacz również opieka Wordpress
Jeśli napotkamy błąd i nie możemy zalogować się do panelu administracyjnego WordPressa, Skrypt Przywracania Awaryjnego może nam pomóc w szybkiej naprawie problemu z przekierowaniami.
Po uruchomieniu skryptu, jeżeli błąd wynika z konkretnej wtyczki, jak wcześniej pokazano, możemy ją wyłączyć, a także wszystkie na raz, aby sprawdzić, czy to rozwiąże kwestię przekierowań.
W przypadku, gdy problem nie leży w wtyczce ani motywie, ale na przykład wynika z literówki w nazwie domeny (błędnie wpisanego adresu strony), wówczas w zakresie skryptu znajdziemy opcję poprawy adresów strony i WordPressa (które zazwyczaj są identyczne).
Dokonujemy poprawek i naciskamy „Aktualizuj adresy URL".
Gotowe!
Strona powinna teraz działać, a my możemy zalogować się do panelu administracyjnego WordPress.
W sytuacji, gdy wyłączenie wszystkich wtyczek i motywów, sprawdzenie poprawności certyfikatu SSL i ustawień adresów URL w WordPressie nie przyniosło rezultatów, warto zajrzeć do pliku .htaccess.
Ten plik pełni istotną rolę w kontrolowaniu różnych aspektów strony internetowej, włączając w to przekierowania.
Aby sprawdzić, czy to właśnie plik .htaccess jest winowajcą, musimy zalogować się na serwer poprzez FTP.
Niestety, w tym przypadku Skrypt Przywracania Awaryjnego nie pomoże.
Po zalogowaniu się na serwer, udajemy się do głównego katalogu WordPressa, gdzie znajduje się plik .htaccess.
Zmieniamy nazwę tego pliku, dodając na końcu na przykład „old”.
Poprzez zmianę nazwy pliku .htaccess, de facto go wyłączamy, zachowując jednocześnie kopię zapasową. Warto jednak pamiętać, że taka modyfikacja może wprowadzić pewne nieprzewidziane skutki, dlatego zalecamy ostrożność.
Po tej operacji, odświeżamy stronę, sprawdzając, czy problem został naprawiony. Jeśli tak, udajemy się do ustawień WordPressa, a następnie do zakładki "Bezpośrednie Odnośniki". Tutaj przywracamy wcześniejsze ustawienia i zapisujemy zmiany, co spowoduje generację nowego pliku .htaccess przez WordPress.
Warto porównać nowy i stary plik .htaccess, aby zidentyfikować ewentualne zmiany. Jednakże, trzeba pamiętać, że modyfikacje w pliku .htaccess mogą być również wynikiem działań wtyczek. Z tego powodu, usuwanie fragmentów pliku .htaccess może negatywnie wpłynąć na działanie niektórych wtyczek, takich jak te odpowiedzialne za ochronę WordPressa czy kontrolę dostępu do plików na serwerze.
Jeśli problem związany z plikiem .htaccess jest trudny do zidentyfikowania lub rozwiązania, warto skonsultować się z osobą znającą się na WordPressie.
Oczywiście, istnieje ryzyko, że w pewien sposób utracimy lub przypadkowo usuniemy istotne pliki WordPressa...
Zobaczmy, co się stanie, jeśli usuniemy niektóre ważne pliki WordPressa.
Przejdźmy do próby usunięcia kilku plików WordPressa, korzystając z połączenia FTP.
Postanowiłem usunąć kilka losowych plików z głównego katalogu WordPressa i z katalogu wp-admin. Dodatkowo, całkowicie wykasowałem folder z plikami JavaScript (folder „js”) z katalogu wp-admin.
Te działania wystarczyły, aby znacząco zakłócić działanie strony - po próbie zalogowania się do panelu administracyjnego pojawia się błąd krytyczny witryny.
Na stronie głównej WordPressa pojawia się komunikat „No such file or directory”, co oznacza, że nie istnieje taki plik lub folder.
Rozumiem, to jakbyśmy dostali wskazówkę, że coś jest nie tak, że pewne pliki są brakujące.
Ale jak sobie z tym poradzić?
Musimy ściągnąć najnowszą wersję WordPressa ze strony wordpress.org, rozpakować ją na naszym komputerze, a następnie przenieść brakujące pliki z komputera na serwer.
Szczęśliwie, program FileZilla oferuje przydatną funkcję porównywania katalogów, co znacząco ułatwia ten proces.
Otwieramy te same katalogi (czyli te, których zawartość chcemy porównać) zarówno na komputerze, jak i na serwerze. Następnie uruchamiamy funkcję porównywania katalogów, przechodząc do zakładki Podgląd > Porównywanie katalogów i klikając opcję Włącz.
FileZilla zaznaczy różnice w zawartości otwartych katalogów.
Teraz wystarczy skopiować brakujące pliki z lewej strony (naszego komputera) na prawą stronę (na serwer).
I teraz musimy przejrzeć każdy katalog, aż odnajdziemy i uzupełnimy wszystkie brakujące pliki. To zadanie może być nieco czasochłonne.
Warto jednak zobaczyć, jak Skrypt Przywracania Awaryjnego może znacznie ułatwić ten proces. Po uruchomieniu skryptu, przechodzimy do sekcji "Core Files", gdzie od razu możemy zobaczyć listę brakujących plików WordPressa.
Przewijamy stronę do samego dołu sekcji, gdzie mamy dodatkowe opcje. Tutaj istnieje możliwość ponownego przeskanowania wszystkich plików WordPressa za pomocą opcji "Rescan Core Files". Co więcej, jednym kliknięciem (za pomocą opcji "Reinstall All Core Files") możemy zainstalować na nowo wszystkie pliki WordPressa.
Skrypt Przywracania Awaryjnego załatwia to dosłownie w kilka chwil.
W przypadku ręcznej interwencji? Odpowiednio z pół godziny, żeby nie powiedzieć więcej.
Najnowsza wersja WordPressa, po wykryciu krytycznego błędu, automatycznie wysyła wiadomość e-mail z informacjami o błędzie oraz linkiem do trybu awaryjnego dla administratora witryny.
Po kliknięciu tego linku otworzy się panel administracyjny WordPressa w trybie awaryjnym.Tryb awaryjny dezaktywuje wtyczki i motywy, które mogą powodować problemy.
Dzięki temu użytkownik ma możliwość, na przykład, przywrócenia kopii zapasowej strony.
Oczywiście, teoria zawsze wydaje się prosta, ale w praktyce mogą wystąpić różne nieprzewidziane sytuacje.
Imaginuj sobie, że dokonujemy aktualizacji, a jako rezultat otrzymujemy pusty ekran z krótkim komunikatem o błędzie, a wiadomość e-mail do administratora nigdy nie dociera.
W takich sytuacjach, jeśli aktualizujemy tylko jedną wtyczkę i pojawia się błąd krytyczny, to możemy w miarę pewności stwierdzić, że to konkretna wtyczka jest sprawcą problemów.
Nie ma również problemu z motywami, ponieważ zazwyczaj mamy tylko jeden aktywny motyw.
Nawet gdy aktualizujemy kilka motywów naraz i pojawia się krytyczny błąd witryny, możemy przypuszczać, że to aktywny motyw sprawia kłopoty.
Kwestie stają się bardziej skomplikowane, gdy aktualizujemy kilka wtyczek jednocześnie, a nie mamy pewności, która z nich jest odpowiedzialna za błąd krytyczny witryny.
Może się również zdarzyć, że błąd pojawi się po aktualizacji samego WordPressa.
W takim przypadku, prawdopodobnie jedna z naszych wtyczek lub motywów nie jest zgodna z nowszą wersją WordPressa i generuje błędy.
Co zrobić w tej sytuacji?
Mamy dwie opcje.
Po pierwsze, możemy wyłączyć wszystkie wtyczki i obecny motyw.
To powinno naprawić błąd i przywrócić dostęp do panelu administracyjnego.
Wtedy możemy przywrócić kopię zapasową strony. Jednak warto dowiedzieć się, co spowodowało ten błąd, więc możemy ponownie włączać jedno po drugim to, co wcześniej wyłączyliśmy i obserwować, kiedy dokładnie pojawia się błąd – to pozwoli nam zidentyfikować, co jest odpowiedzialne za krytyczny błąd.
Drugą opcją jest skorzystanie z tzw. trybu debugowania WordPressa.
Tryb debugowania sprawia, że WordPress wyświetla na stronie głównej wszystkie napotkane błędy i ostrzeżenia wraz z ich konkretną lokalizacją.
Niestety, tryb debugowania jest domyślnie wyłączony, więc pokażę teraz, jak go aktywować.
Aby aktywować tryb debugowania WordPress, postępuj zgodnie z poniższymi instrukcjami:
Zaloguj się na swój serwer za pomocą połączenia FTP.
Przejdź do katalogu zawierającego pliki WordPressa.
Znajdź plik o nazwie wp-config.php.
Otwórz plik wp-config.php za pomocą edytora tekstu, na przykład Notepad lub Visual Studio Code.
Dodaj poniższy kod przed linijką zawierającą polecenie /* That's all, stop editing! Happy publishing. */:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Ten kod aktywuje tryb debugowania i zapisuje logi błędów do pliku.
Zapisz zmiany i zamknij plik.
Teraz WordPress działa w trybie debugowania, co pozwoli na wyświetlanie błędów i zapisywanie szczegółowych informacji na ich temat. Pamiętaj o wyłączeniu trybu debugowania po rozwiązaniu problemu, aby nie generować dodatkowych logów. W tym celu usuń lub zakomentuj dodane wcześniej linie kodu w pliku wp-config.php.
Modyfikujemy plik i przeszukujemy go w poszukiwaniu linii z frazą WP_DEBUG.
Zauważ, że standardowo tryb debugowania jest wyłączony, ponieważ wartość parametru WP_DEBUG jest ustawiona na „false”.
Aby włączyć tryb debugowania, konieczne jest zmienienie słowa „false” na „true”.
Zachowujemy dokonane zmiany i zamykamy edytor tekstu.
Potwierdzamy chęć wysłania nowej wersji pliku wp-config na serwer, klikając „TAK”, i teraz tryb debugowania jest już aktywny.
Teraz powinniśmy zauważyć dodatkowe informacje dotyczące błędów na stronie.
Dobra, mamy już świadomość, co powoduje kłopoty na naszej stronie, więc przechodzimy do naprawy.
Wystarczy po prostu wyłączyć wtyczkę lub motyw, który generuje błąd, aby przywrócić dostęp do panelu administracyjnego.
Aby dezaktywować wtyczkę lub motyw, wystarczy zmienić nazwę odpowiadającego folderu na naszym serwerze.
Chociażby dla wyłączenia wtyczki WooCommerce, przechodzimy do katalogu wp-content > plugins, a następnie modyfikujemy nazwę folderu woocommerce poprzez dodanie dowolnego fragmentu na końcu.
Sprawdź Test wtyczki WP Super Cache Wordpress
Odświeżamy stronę, i voilà, witryna znowu jest aktywna.
W tej chwili możemy zdecydować się na usunięcie wtyczki, jeśli nie jest nam potrzebna, albo przywrócić kopię zapasową strony do stanu sprzed aktualizacji.
Ten sam proces można zastosować do dezaktywacji motywów.
Wchodzimy do katalogu wp-content > themes i modyfikujemy nazwę folderu aktualnie używanego motywu.
Po wyłączeniu motywu nasza strona nadal nie będzie wyświetlała zawartości, gdyż WordPress potrzebuje motywu do poprawnego renderowania treści. Niemniej jednak, panel administracyjny WordPress będzie w pełni funkcjonalny, co umożliwi nam przywrócenie kopii zapasowej strony lub zainstalowanie nowego motywu.
Rozumiem, że chcesz, aby rozwiązanie problemu z błędem krytycznym było szybsze i bardziej wygodne. Zamiast logowania się na serwer przez FTP, wprowadzania danych, instalowania programu do FTP, czy włączania i wyłączania trybu debugowania, możesz skorzystać z Przywracania Awaryjnego Skryptu.
Przyjrzyjmy się, jak to działa.
Po zauważeniu dostępnych aktualizacji, wchodzisz na stronę i przystępujesz do aktualizacji...
Zobacz również 5 najszybszych motywów wordpress
Podczas procesu aktualizacji, gdy nagle pojawia się błąd krytyczny na witrynie, powodując jej całkowite zablokowanie, sięgam po Skrypt Przywracania Awaryjnego.
Skrypt ten to prosty plik PHP, który uruchamiam, wpisując dokładny adres na serwerze w przeglądarkę. Następnie podaję hasło, co powoduje uruchomienie skryptu przywracania awaryjnego.
Wchodząc do sekcji Plugins, klikam opcję „Deactivate plugin", jeśli znam wtyczkę, która spowodowała problem. W przypadku braku pewności co do konkretnej wtyczki, korzystam z opcji „Deactivate all plugins".
Procedurę tę można również zastosować do motywów, co pozwala szybko zidentyfikować źródło problemu i przywrócić działanie witryny.
Zobacz również Kopia zapasowa Wordpress. Jak wykonać automatyczny backup strony
Po wyłączeniu wszystkich motywów, chociaż strona główna może pozostać pusta, panel administracyjny WordPress nadal będzie dostępny i sprawny.
Następnie, kierujemy się do panelu administracyjnego WordPress, aktywujemy wtyczkę WPvivid i przystępujemy do przywracania kopii zapasowej.
Aby uniknąć błędów krytycznych, istotne jest przestrzeganie kilku kluczowych kroków. Regularne aktualizacje stanowią fundament, jednak równie istotne jest wyłączenie automatycznych aktualizacji. Dodatkową wygodą jest korzystanie z snapshotów przed przystąpieniem do niezbędnych aktualizacji, co pozwala na bezpieczne przywrócenie strony w przypadku wystąpienia problemów.
Pytanie, czy należy aktualizować wtyczki i motywy w WordPressie, często budzi wątpliwości. Aktualizować, czy może lepiej tego unikać?
Nie ma jednoznacznej odpowiedzi, ponieważ to zależy od rodzaju aktualizacji. Jeśli mamy do czynienia z nową wersją wtyczki, wzbogaconą o nowe funkcje, czasem warto zaczekać kilka tygodni z aktualizacją. Po premierze wersji 3.0 często pojawia się szybko wersja 3.1, a tak może trwać przez kolejne dni. Dlatego czasem opłaca się cierpliwie poczekać na bardziej stabilną edycję.
Jednakże istnieją aktualizacje, których nie warto odkładać. Chodzi tu o łatki bezpieczeństwa, które zamykają potencjalne luki, ułatwiające niepożądane wniknięcie na stronę. W przypadku takich aktualizacji nie czekamy – wykonujemy je natychmiast. O dziurach w bezpieczeństwie szybko staje się głośno, a informacje na ich temat są dobrze udokumentowane. Autorzy wtyczek często opisują, w jaki sposób nowa wersja naprawia znalezione problemy.
Dlatego, jeśli istnieje ryzyko naruszenia bezpieczeństwa, zaleca się bezzwłoczne dokonanie aktualizacji. Warto jednak pamiętać o wykonywaniu kopii zapasowej przed wszelkimi aktualizacjami, co pozwala nam bezpiecznie powrócić do poprzedniego stanu w razie konieczności. Osobiście polecam wtyczkę WPvivid do tego celu.
Posiadając kopię bezpieczeństwa, możemy śmiało przystąpić do aktualizacji.
Zobacz również:
Sprawdź skrzynkę pocztową w poszukiwaniu maila dotyczącego błędu w witrynie. Zaloguj się przez udostępniony link i, w zależności od źródła problemu, wyłącz odpowiednią wtyczkę lub tymczasowo zmień motyw.
Klienci JDM.pl mogą wygodnie skorzystać z opcji sprawdzenia dziennika błędów, gdzie analiza logów pomoże zidentyfikować problem i znaleźć jego rozwiązanie.
W przypadku braku dostępu do Kokpitu można próbować wyłączyć wtyczki za pomocą SFTP, zgodnie z instrukcjami krok po kroku. Podobną metodę można zastosować do motywu, wgrywając nową wersję poprzez SFTP do folderu /wp-content/themes, gdzie znajdują się zainstalowane motywy.
Jeśli żadna z powyższych metod nie przyniesie rezultatów, można zgłosić problem do hostingu, który pomoże w rozwiązaniu problemu, oferując wsparcie za dodatkową opłatą lub bezpłatnie, w zależności od zakresu problemu.