Conditionally bypass plugin

时间:2013-12-06 作者:mikkelbreum

我想推迟为某些页面加载othervise活动插件。

由于所有插件都位于同一个文件夹中,WordPress只加载激活的插件,因此它必须在某个点上有一个活动插件句柄数组。甚至可能有一个过滤器可以在读取这个数组之前修改它(我希望……)。

那么,是否有可能通过动态地从活动插件列表中删除其句柄,而无需使用deactivate\\u plugins()停用插件,从而有条件地绕过其他活动插件的加载?

1 个回复
最合适的回答,由SO网友:Rarst 整理而成

活动插件列表由提供wp_get_active_and_valid_plugins() 在堆芯加载期间active_plugins 选项(多站点详细信息除外)。

虽然它没有作为任何选项的显式过滤器,但可以通过\'option_\' . $option 挂钩(sooption_active_plugins) 而mu插件(之前加载的)应该能够做到这一点。

请注意,控制插件所做的事情(例如它所钩住的东西)比控制插件是否完全加载更常见、更好。

结束

相关推荐

private functions in plugins

我开发了两个插件,其中一个功能相同(相同的名称,相同的功能)。当试图激活两个插件时,Wordpress会抛出一个错误,因为它不允许我以相同的名称定义函数两次。有没有一种方法可以使这个函数只对插件私有,而不使用面向对象编程,也不简单地重命名函数?我不想使用OOP,因为我首先要学习它。此外,我不想重命名该函数,因为我可能也想在其他插件中使用它,而重命名感觉不太合适。