Aktywować wtyczkę przez PHPMyAdmin lub FTP?


18

Właśnie wyłączyłem wtyczkę na mojej stronie i teraz daje mi przerażający biały ekran śmierci. Wiem, że witryna będzie w porządku, jeśli ponownie aktywuję wtyczkę.

Czy istnieje sposób ręcznej aktywacji wtyczki za pomocą PHPMyAdmin lub FTP?


prawdopodobnie warto poinformować właściciela wtyczki, że tak się stało. Może wtyczka wymaga trochę pracy
Benny

Odpowiedzi:


32

Naprawiłem to, przechodząc przez PHPMyAdmin do tabeli „Opcje”, a następnie do wiersza active_plugins.

Miałem tam zapisane (sformatowane dla czytelności):

a:10:{
    i:0;s:49:"1and1-wordpress-wizard/1and1-wordpress-wizard.php";
    i:1;s:29:"acf-repeater/acf-repeater.php";
    i:2;s:30:"advanced-custom-fields/acf.php";
    i:3;s:45:"limit-login-attempts/limit-login-attempts.php";
    i:4;s:27:"redirection/redirection.php";
    i:6;s:33:"w3-total-cache/w3-total-cache.php";
    i:7;s:41:"wordpress-importer/wordpress-importer.php";
    i:8;s:24:"wordpress-seo/wp-seo.php";
    i:9;s:34:"wpml-string-translation/plugin.php";
    i:10;s:38:"wpml-translation-management/plugin.php";
}

Dodałem nową linię (dla brakującej wtyczki) i zwiększyłem a:10do, a:11aby wskazać, że w tablicy jest teraz 11 elementów:

a:11:{
    i:0;s:49:"1and1-wordpress-wizard/1and1-wordpress-wizard.php";
    i:1;s:29:"acf-repeater/acf-repeater.php";
    i:2;s:30:"advanced-custom-fields/acf.php";
    i:3;s:45:"limit-login-attempts/limit-login-attempts.php";
    i:4;s:27:"redirection/redirection.php";
    i:5;s:40:"sitepress-multilingual-cms/sitepress.php";
    i:6;s:33:"w3-total-cache/w3-total-cache.php";
    i:7;s:41:"wordpress-importer/wordpress-importer.php";
    i:8;s:24:"wordpress-seo/wp-seo.php";
    i:9;s:34:"wpml-string-translation/plugin.php";
    i:10;s:38:"wpml-translation-management/plugin.php";
}

i:wydaje się być numerem pozycji, a dzięki komentarzowi JHoffmanna pojawia s:się długość ciągu, który następuje.

Strona działa teraz jak wcześniej!


2
sOznacza ciąg i numer następuje to długość łańcucha.
JHoffmann

@JHoffmann Dzięki za to! Zaktualizowałem moją odpowiedź. Czy możesz mi powiedzieć, gdzie się tego nauczyłeś? Czy jest gdzieś dobry zasób, który wyjaśnia takie rzeczy? Dzięki.
Django Reinhardt

iw rzeczywistości oznacza wartość całkowitą, soznacza ciąg, a liczba obok sto długość łańcucha
Pieter Goosen

1
To są dane serializowane. Nie mam dokładnego źródła, ale możesz przeglądać dane serializowane. Możesz także spojrzeć na JSON, ponieważ jest to więcej w przypadku wykorzystywania danych zserializowanych
Pieter Goosen

1
@DjangoReinhardt Jak Pieter Goosen powiedział, że są to dane serializowane, ponieważ są generowane przez funkcję serializacji php . W wordpress istnieje również funkcja otoki o nazwie może_serializować
JHoffmann

12
//Using this code you can activate your plugin from the functions.php
    function activate_plugin_via_php() {
        $active_plugins = get_option( 'active_plugins' );
        array_push($active_plugins, 'unyson/unyson.php'); /* Here just replace unyson plugin directory and plugin file*/
        update_option( 'active_plugins', $active_plugins );    
    }
    add_action( 'init', 'activate_plugin_via_php' );

Jeśli chcesz aktywować więcej niż jedną wtyczkę, po prostu powtórz ...
Anil Jadhav

array_push ($ active_plugins, 'unyson / unyson.php');
Anil Jadhav

1
możesz także dodać if (! in_array ('unyson / unyson.php', $ active_plugins)), aby upewnić się, że nie zostanie dodany więcej niż jeden raz
Pierre

3

Możesz po prostu zmienić nazwę folderu wtyczki, na przykład:

"_aksimet"aby go dezaktywować, a następnie ponownie, aby "aksimet"go ponownie aktywować (jeśli był aktywny)

możesz to zrobić razem ze wszystkimi folderami „wtyczek”.

W przeciwnym razie przejdź do MySQL i zapoznaj się z instrukcją krok po kroku , w skrócie:

  1. MYSQL> wp_options
  2. wyszukaj active_pluginswpis (oba kroki można wykonać przez SELECT * FROM wp_options WHERE option_name = 'active_plugins';)
  3. a następnie napisz swoją wtyczkę tam, gdzie pisane są inne wtyczki ( iindeks, sdługość łańcucha).

Mam nadzieję, że to pomoże


Dzięki. Próbowałem dezaktywować i okazało się, że kod wtyczki jest zbyt mocno zakorzeniony w całej witrynie. Potrzebuję sposobu na reaktywację :(
Django Reinhardt

Co przez to rozumiesz? Aby ponownie aktywować, po prostu zmień jego nazwę z powrotem. Czy masz jakieś błędy?
kybernaut.cz

Wtyczka została dezaktywowana przez interfejs administratora WP. Po dezaktywacji nie mogłem już uzyskać dostępu do mojej witryny. Nie było nic do „zmiany nazwy”, ponieważ nie dezaktywowałem go przez zmianę nazwy na FTP.
Django Reinhardt

Zaktualizowałem odpowiedź, ale to zdecydowanie dziwne. Która to była wtyczka? Być może możesz przełączyć się z powrotem na dwadzieścia piętnaście (zmiana nazwy motywu), aktywować go i sprawdzić, co poszło nie tak, i wrócić do motywu.
kybernaut.cz

2

To kolejna odpowiedź na inne podejście, które może przynieść korzyści komuś innemu w przyszłości. Możesz także przenieść folder wtyczek do folderu Must Use (który prawdopodobnie będziesz musiał utworzyć, jeśli nie był wcześniej używany. Ścieżka to zwykle:

wp-content/mu-plugins

Wtyczki w tym folderze zawsze będą działać. Aby uzyskać więcej informacji, zapoznaj się z poniższymi informacjami:

https://codex.wordpress.org/Must_Use_Plugins

Uwaga: Jedyną rzeczą do rozważenia jest to, że te wtyczki są ładowane przed innymi w folderze wtyczek. Zapoznaj się również z zastrzeżeniami w powyższym linku, ponieważ mogą występować inne problemy, które mogą uniemożliwić poprawne działanie wtyczki.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.