Ativar um plugin através do PHPMyAdmin ou FTP?

18

Acabei de desativar um plug-in no meu site e agora está me dando a temida tela branca da morte. Sei que o site ficará bem se eu reativar o plug-in.

Existe uma maneira de ativar manualmente um plugin através do PHPMyAdmin ou via FTP?

Django Reinhardt
fonte
provavelmente será útil dizer ao proprietário do plug-in que isso aconteceu. Talvez o plugin precisa de um pouco de trabalho
Benny

Respostas:

32

Corrigi isso passando pelo PHPMyAdmin para a tabela "Opções" e depois para a linha active_plugins.

Eu tinha o seguinte armazenado lá (formatado para facilitar a leitura):

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";
}

Eu adicionei uma nova linha (para o plugin em falta) e incrementado a a:10para a:11indicar que agora existem 11 itens na matriz:

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:parece ser o número do item e, graças ao comentário de JHoffmann, parece s:ser o comprimento da sequência a seguir.

O site agora funciona como antes!

Django Reinhardt
fonte
2
O ssignifica string e o número a seguir é o comprimento da string.
JHoffmann
@JHoffmann Obrigado por isso! Atualizei minha resposta. Você pode me dizer onde aprendeu isso? Existe um bom recurso em algum lugar que explique essas coisas? Obrigado.
Django Reinhardt
irealmente significa inteiros valor, scadeia de meios e o número ao lado sé o comprimento da corda
Pieter Goosen
1
São dados serializados. Não tenho uma fonte exata, mas você pode pesquisar dados serializados. Você também pode olhar para JSON como este é mais onde os dados serializados é usado
Pieter Goosen
1
@DjangoReinhardt Como Pieter Goosen disse que estes são dados serializados, pois são gerados pela função de serialização do php . No WordPress, há também uma função de invólucro chamado maybe_serialize
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' );
Anil Jadhav
fonte
Se você gostaria de ativar mais de um plug-in, em seguida, basta repetir ...
Anil Jadhav
array_push ($ active_plugins, 'unyson / unyson.php');
Anil Jadhav
1
você também pode adicionar um if (in_array ( 'unyson / unyson.php', $ active_plugins)!) para se certificar de que não é mais do que uma vez adicionado
Pierre
3

Você pode simplesmente renomear a pasta do plugin, por exemplo:

"_aksimet"desativá-lo e depois voltar "aksimet"para ativá-lo novamente (se estava ativo)

você pode fazer isso com todas as pastas "plugins" juntas.

Caso contrário, acesse o MySQL e dê uma olhada neste manual passo a passo , em resumo:

  1. MYSQL> wp_options
  2. procurar active_pluginsentrada (ambas as etapas podem ser feitas por SELECT * FROM wp_options WHERE option_name = 'active_plugins';)
  3. e, em seguida, escreva seu plug-in como os outros plugins são gravados ( ié o índice, sé para o comprimento da string).

Espero que ajude

kybernaut.cz
fonte
Obrigado. Tentei desativar e o código do plug-in está muito arraigado em todo o site. Eu preciso de uma maneira de reativá-lo :(
Django Reinhardt
O que você quer dizer com isso? Para reativação, basta renomeá-lo novamente. Você tem algum erro ou algo assim?
Kybernaut.cz 26/08/2015
O plug-in foi desativado através da interface do administrador do WP. Uma vez desativado, não era mais possível acessar meu site. Não havia nada para "renomear", pois eu não a desativei ao renomeá-la por FTP.
Django Reinhardt
Eu atualizei minha resposta, mas isso definitivamente estranho. Qual plugin foi? Talvez você possa voltar aos vinte e quinze (renomeando seu tema) ativá-lo e verificar o que deu errado e depois voltar ao seu tema.
Kybernaut.cz 27/08/2015
2

Apenas mais uma resposta para uma abordagem diferente que possa beneficiar outra pessoa no futuro. Você também pode mover a pasta do plug-in para a pasta Must Use (que você provavelmente precisará criar se não for usada antes. Este caminho geralmente é:

wp-content/mu-plugins

Os plug-ins nesta pasta sempre serão executados. Consulte o seguinte para obter mais informações:

https://codex.wordpress.org/Must_Use_Plugins

Nota: A única coisa a considerar é que esses plug-ins são carregados antes de outros na pasta de plug-ins. Consulte também as advertências no link acima, pois pode haver outros problemas que podem impedir o funcionamento correto do seu plugin.

TomC
fonte