WordPress的is_plugin_active_for_network函数不适用于多站点

时间:2014-08-15 作者:Thompson

我需要做一些操作,如果用户点击Network Activate 我的WP插件上的按钮(在WP Multisite中)。

但我注意到,当我从主管理员面板中按下网络激活按钮时,Wordpress的is\\u plugin\\u active\\u for\\u network功能不适用于多站点。

它不返回任何内容,因此

if(is_plugin_active_for_network(\'abc/abc.php\'))
未实现。

但是,当网络已激活时,功能-is_plugin_active_for_network 工作正常(返回1 - i、 e。true).

谁能告诉我如何检查Network Activate 主管理员是否单击按钮?

1 个回复
SO网友:BA_Webimax

您需要在激活插件时进行检查。WordPress将发送一个布尔标志,让您的函数知道这是一个网络范围的激活。

register_activation_hook( __FILE__, \'activate\' );

function activate( $network_wide ) {

    // $network_wide will be TRUE if activation is network wide
    if ( $network_wide  ) {

        ... Do Stuff ...

    }

    ...

}

结束

相关推荐

Multisite and plugins options

我需要更多关于get_site_option(), update_site_option() 和add_site_option().在codex中,他们说它与单次安装相同,只是在多站点中,它返回网络范围的选项。好吧,但我对这一点感到困惑:这是否意味着一旦设置了网络范围选项,所有站点的选项都是相同的?还是每个站点都会覆盖它?我的意思是如果我这样做: update_site_option(\'option_group\', \'default_options());// default_options() r