我正在建立一个(可能的)大型多站点网络,我希望现在可以尽可能方便地在需要时添加和配置站点。我目前正处于处理插件的阶段。
使用multisite,我知道有几种不同的方法可以激活插件
将插件放入/plugins
, 在每个站点上以独立方式激活该插件/plugins
, 使用“网络激活”将其激活all 站点将插件放入/mu-plugins
, 在每个站点上自动激活现在,我一直在玩设置,我想在所有站点上激活Akismetbut 一个或两个。我原以为我可以通过网络激活插件,然后在单个站点上禁用它,但我无法做到这一点-如果我使用网络激活,那么只有“网络停用”选项,这将停用所有站点上的插件。
有没有一种方法可以让网络激活的便捷功能,但仍然可以方便地逐个站点停用插件?
最合适的回答,由SO网友:sorich87 整理而成
您可以使用过滤器site_option_*
.
E、 g.以下内容将禁用id为2的博客上的akismet。
add_filter(\'site_option_active_sitewide_plugins\', \'modify_sitewide_plugins\');
function modify_sitewide_plugins($value) {
global $current_blog;
if( $current_blog->blog_id == 2 ) {
unset($value[\'akismet/akismet.php\']);
}
return $value;
}