Gdzie znaleźć listę aktywowanych wtyczek w bazie danych?

  • Poziom trudności:

Pomogłem rozwiązać Twój problem? Wspieraj moje działania bym pisał więcej:

Czasami podczas aktualizowania pluginów w WordPressie jedna wtyczka potrafi się zaciąć i wtedy nie można aktualizować kolejnych póki ta jedna się nie zaktualizuje. Jest to problematyczne, ponieważ aktualizująca się w nieskończoność wtyczka pozbawia nas innych aktualizacji. Co w tej sytuacji zrobić? Można zalogować się na FTP, zlokalizować wtyczkę i zmienić nazwę dla jej katalogu, jednak nie zawsze to wystarczy, aby pozbyć się problemu. Alternatywnym sposobem poradzenia sobie w tej sytuacji jest zalogowanie się do bazy danych MySQL za pośrednictwem panelu phpmyadmin, wejście do odpowiedniej tabeli i wyłączenie wtyczki, która blokuje nasze działania. W tym kursie chcę Ci pokazać jak to można zrobić.

Poniżej znajdziesz instrukcję krok po kroku, która pomoże Ci w sytuacji, kiedy aktualizacja jednej wtyczki blokuje Ci aktualizację pozostałych.

Krok 1

Pierwsze zadanie jakie stawiam przed Tobą to znalezienie panelu PhpMyAdmin i zalogowanie się do Twojej bazy danych MySQL. W tym celu skorzystaj z poradnika, który dla Ciebie przygotowałem: W jaki sposób dostać się do panelu phpmyadmin?

Nie ma jednego sposobu otwarcia panelu, stąd prośba, abyś skorzystał z powyższego poradnika. Dla początkujących największym problemem będzie jego odnalezienie, a później pozyskanie z pliku wp-config.php loginu i hasła do bazy danych, aby dostać się do panelu. Jeśli brzmi to jak czarna magia – spokojnie. Wszystko wyjaśniam w poradniku.

Krok 2

Po zalogowaniu się i wejściu do bazy danych znajdź w lewej kolumnie kliknij na pozycję wp_options. Jest to tabela zawierająca ustawienia motywu.

W razie dużej ilości tabel możliwe, że będziesz musiał jej szukać – tak jak ja – na drugiej lub na kolejnych stronach. Tabele z lewej ułożone są w porządku alfabetycznym.

Ważne!
Tablica z opcjami może mieć inny przedrostek. W tym przypadku jest to wp_ – standardowy przedrostek proponowany przy instalacji WordPressa. Może być jednak to dowolny inny przedrostek, zależnie od Twoich indywidualnych ustawień.

Krok 3

Teraz znajdź wiersz, który nazywa się active_plugins. Bardzo możliwe, że znajdziesz go na drugiej stronie tabeli wp_options. Następnie kliknij przycisk Edytuj. Otworzy Ci się dodatkowe okno zawierające informacje o włączonych (aktywowanych) wtyczkach. Dla pewności aby nic nie popsuć możesz skopiować zawartość pola option_value do Notatnika.

Krok 4

Kolejne działania zależą od tego, co chcesz osiągnąć:

Chcę wyłączyć (dezaktywować) wszystkie wtyczki

Wyłączenie wszystkich wtyczek jest bardzo proste. Wystarczy, że usuniesz całą zawartość pola option_value w wierszu active_plugins. Po odświeżeniu panelu wszystkie wtyczki będą wyłączone.

Dzięki temu będziesz mógł zalogować się do panelu i włączać na nowo jedną po drugiej i aktualizować każdą pojedynczo, aby nie dopuścić do sytuacji w której jakaś aktualizacja zablokuje update innych wtyczek.

Chcę wyłączyć (dezaktywować) tylko jedną wtyczkę

Tu zadanie jest nieco trudniejsze, bo musisz się przyjrzeć zawartości pola option_value i znaleźć pewną zależność w kodzie tam umieszczonym. Zwróć uwagę na to, że kod, który wygląda mniej więcej tak:

a:7:{i:0;s:30:"advanced-custom-fields/acf.php";i:1;s:33:"classic-editor/classic-editor.php";i:2;s:36:"contact-form-7/wp-contact-form-7.php";i:3;s:23:"elementor/elementor.php";i:4;s:33:"instagram-feed/instagram-feed.php";i:5;s:41:"sassy-social-share/sassy-social-share.php";i:6;s:24:"wordpress-seo/wp-seo.php";}

posiada pewien ustrukturyzowany układ. Kod zaczyna się od a:7 co znaczy innymi słowy, że na stronie jest 7 aktywnych wtyczek. Następnie wewnątrz klamry { i } znajduje się lista tych wtyczek. Informacja o każdej wtyczce zaczyna się od i: a kończy na średniku ;. Dla ułatwienia pokażę Ci tą samą listę rozdzieloną enterami:

a:7:{
i:0;s:30:"advanced-custom-fields/acf.php";
i:1;s:33:"classic-editor/classic-editor.php";
i:2;s:36:"contact-form-7/wp-contact-form-7.php";
i:3;s:23:"elementor/elementor.php";
i:4;s:33:"instagram-feed/instagram-feed.php";
i:5;s:41:"sassy-social-share/sassy-social-share.php";
i:6;s:24:"wordpress-seo/wp-seo.php";
}

Całość nabiera sensu, prawda? Teraz, skoro już widzisz gdzie zaczyna się i gdzie się kończy informacja o konkretnych wtyczkach (choć powyższy fragment kodu potraktuj czysto edukacyjnie i nie rozdzielaj enterami tych informacji, bo lista aktywnych wtyczek przestanie działać) spróbuj usunąć jedną z nich. Na poniższym przykładzie pokazuję jak wyłączyć wtyczkę Sassy Social Share. Zwróć uwagę na to, że prócz usunięcia informacji o aktywnej wtyczce zmieniam także ilość wszystkich aktywnych wtyczek (z 7 na 6) oraz numerację ostatniej z nich – aby wszystko się zgadzało.

Jak pewnie zauważyłeś każda wtyczka miała liczbę porządkową. Ponieważ usunąłem wtyczkę piątą – przedostatnią, dlatego zmieniła się liczba przypisana do ostatniej wtyczki. Tylko czemu ostatnia z nich jest przyporządkowana do liczby pięć (po zmianie) skoro aktywnych wtyczek jest sześć? Otóż pierwsza wtyczka zawsze oznaczana jest cyfrą 0. Dlatego liczba wszystkich aktywnych wtyczek jest o 1 większa niż liczba porządkowa ostatniej z nich.

Osoba, która zaczyna modyfikować bazę MySQL może łatwo pomylić się w obliczeniach i zresetować listę aktywnych wtyczek. Dlatego właśnie tak ważna jest kopia zapasowa edytowanego kodu, aby móc wrócić do wersji sprzed edycji.

UDOSTĘPNIJ

Pomogłem rozwiązać Twój problem? Wspieraj moje działania bym pisał więcej:

WordPress dla początkujących