通过PHPMyAdmin或FTP激活插件?


18

我刚刚在我的网站上禁用了一个插件,现在它给了我可怕的死亡白屏。我知道如果我重新激活插件,该站点就可以了。

有没有办法通过PHPMyAdmin或通过FTP手动激活插件?


告诉插件所有者发生这种情况可能很有用。也许插件需要一些工作
Benny

Answers:


32

我通过通过PHPMyAdmin修复了表“ Options”,然后修复了row active_plugins

我在其中存储了以下内容(出于可读性考虑对其进行了格式化):

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

我添加了新行(针对缺少的插件),并增加a:10a:11以指示数组中现在有11个项目:

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:似乎是项目编号,这要归功于霍夫曼(JHoffmann)的评论,它似乎s:是后面的字符串的长度。

该站点现在可以像以前一样工作!


2
s代表字符串和数字下面是字符串的长度。
JHoffmann

@JHoffmann谢谢!更新了我的答案。你能告诉我你从哪里学到的吗?哪里有很好的资源可以解释这种情况?谢谢。
Django Reinhardt 2015年

i实际上表示整数值,s表示字符串,并且旁边的数字s是字符串的长度
Pieter Goosen 2015年

1
那就是序列化的数据。我没有确切的消息来源,但是您可以研究序列化的数据。您还可以看看JSON,因为这是更在使用串行数据
彼得·古森

1
正如Pieter Goosen所说,@ DjangoReinhardt是由php的序列化函数生成的序列化数据。在wordpress中,还有一个包装器函数,也许
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

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

1
你还可以添加一个if(in_array(“unyson / unyson.php”,$ active_plugins)!),以确保它不会添加不止一次
皮埃尔

3

您可以简单地重命名插件文件夹,例如:

"_aksimet"停用它,然后返回以 "aksimet"再次激活它(如果已激活)

您可以将所有“ plugins”文件夹一起使用。

否则,请转至MySQL并逐步阅读本分步手册

  1. MYSQL> wp_options
  2. 搜索active_plugins条目(两个步骤都可以通过完成SELECT * FROM wp_options WHERE option_name = 'active_plugins';
  3. 然后将您的插件写在那里,就像其他插件一样写(i是索引,s是字符串的长度)。

希望能帮助到你


谢谢。我尝试停用,结果发现该插件的代码在整个站点上都根深蒂固。我需要一种重新激活它的方法:(
Django Reinhardt

你是什​​么意思?要重新激活,只需将其重命名。您是否有任何错误?
kybernaut.cz 2015年

该插件已通过WP Admin界面停用。停用后,我将无法再访问我的网站。没有什么可以“重命名”的,因为我没有通过在FTP上重命名来停用它。
Django Reinhardt

我已经更新了答案,但这绝对很奇怪。那是哪个插件?也许您可以切换回二十五个(重新命名您的主题)激活它,并检查出了什么问题,然后再返回到您的主题。
kybernaut.cz

2

这是另一种可能会在将来使他人受益的方法的另一个答案。您也可以将plugin文件夹移动到Must Use文件夹(如果以前没有使用过,可能需要创建该文件夹。该路径通常是:

wp-content/mu-plugins

此文件夹中的插件将始终运行。有关更多信息,请参考以下内容:

https://codex.wordpress.org/Must_Use_Plugins

注意:唯一要考虑的是,这些插件在plugins文件夹中先于其他插件加载。另请参阅上述链接中的警告,因为可能还有其他问题可能会阻止您的插件正常工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.