我想推迟为某些页面加载othervise活动插件。
由于所有插件都位于同一个文件夹中,WordPress只加载激活的插件,因此它必须在某个点上有一个活动插件句柄数组。甚至可能有一个过滤器可以在读取这个数组之前修改它(我希望……)。
那么,是否有可能通过动态地从活动插件列表中删除其句柄,而无需使用deactivate\\u plugins()停用插件,从而有条件地绕过其他活动插件的加载?
我想推迟为某些页面加载othervise活动插件。
由于所有插件都位于同一个文件夹中,WordPress只加载激活的插件,因此它必须在某个点上有一个活动插件句柄数组。甚至可能有一个过滤器可以在读取这个数组之前修改它(我希望……)。
那么,是否有可能通过动态地从活动插件列表中删除其句柄,而无需使用deactivate\\u plugins()停用插件,从而有条件地绕过其他活动插件的加载?
活动插件列表由提供wp_get_active_and_valid_plugins()
在堆芯加载期间active_plugins
选项(多站点详细信息除外)。
虽然它没有作为任何选项的显式过滤器,但可以通过\'option_\' . $option
挂钩(sooption_active_plugins
) 而mu插件(之前加载的)应该能够做到这一点。
请注意,控制插件所做的事情(例如它所钩住的东西)比控制插件是否完全加载更常见、更好。
我开发了两个插件,其中一个功能相同(相同的名称,相同的功能)。当试图激活两个插件时,Wordpress会抛出一个错误,因为它不允许我以相同的名称定义函数两次。有没有一种方法可以使这个函数只对插件私有,而不使用面向对象编程,也不简单地重命名函数?我不想使用OOP,因为我首先要学习它。此外,我不想重命名该函数,因为我可能也想在其他插件中使用它,而重命名感觉不太合适。