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

是否可以通过PHPMyAdmin或通过FTP手动激活插件?

评论

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

#1 楼

我通过遍历PHPMyAdmin到表“ Options”修复了该问题,然后在行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:10增加到a: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:才是后面的字符串的长度。

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

评论


s代表字符串,后面的数字是字符串的长度。

– JHoffmann
15年8月26日在16:37

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

– Django Reinhardt
15年8月26日在16:40

我实际上表示整数值,s表示字符串,s旁边的数字是字符串的长度

–Pieter Goosen
15年8月27日在8:25

那就是序列化的数据。我没有确切的消息来源,但是您可以研究序列化的数据。您还可以查看JSON,因为在使用序列化数据的地方更多

–Pieter Goosen
15年8月27日在11:18

正如Pieter Goosen所说,@ DjangoReinhardt是由php的序列化函数生成的序列化数据。在wordpress中,还有一个包装器函数,可能称为may_serialize

– JHoffmann
2015年8月27日23:25



#2 楼

//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
16年7月16日在18:49

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

– Anil Jadhav
16年7月16日在18:49

您还可以添加一个if(!in_array('unyson / unyson.php',$ active_plugins))以确保添加的次数不超过一次

–皮埃尔
18年5月28日在11:00

在哪里可以找到functions.php?是在主题文件夹中还是在wp-includes中?

–韦斯利·贡萨尔维斯(WesleyGonçalves)
20年5月11日,下午3:06

#3 楼

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

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

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

否则,请转到MySQL并逐步阅读本手册,简而言之:


MYSQL> wp_options

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

希望对您有所帮助

评论


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

– Django Reinhardt
15年8月26日在15:57

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

– kybernaut.cz
15年8月26日在16:28

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

– Django Reinhardt
2015年8月26日在16:33



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

– kybernaut.cz
15年8月27日在8:20

#4 楼


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

wp-content/mu-plugins


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

https://codex.wordpress.org / Must_Use_Plugins

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

评论


它在另一个开发人员创建的5年历史网站上挽救了我的命,该网站安装了两个相互依赖的插件,而我在其中意外禁用了其中一个插件。

–梅洛曼
20年7月3日在6:32



哈哈-很高兴听到它为您服务! :)

– TomC
20年7月3日在6:33