如何检查插件在WordPress中是活动的。我安装了易-数字下载(Edd)。目录中:/wp-content/plugins/easy-digital-downloads和插件文件在/wp-content/plugins/easy-digital-downloads/easy-digital-downloads.php中。我试了一下,我知道插件是活动的。
if (is_plugin_active(get_home_url() . '/wp-content/plugins/easy-digital-downloads/easy-digital-downloads.php')) {
echo 'plugin is active';
} else {
echo 'plugin is not active';
}上面的代码呼应了“插件不是活动的”,但是插件是活动的。
我认为问题在于我的插件地址。
发布于 2018-01-15 05:43:34
您不需要完整的url,只需要从plugins目录到主插件文件的路径。
function check_plugin_state(){
if (is_plugin_active('easy-digital-downloads/easy-digital-downloads.php')){
echo 'plugin is active';
}else{
echo 'plugin is not active';
}
}
add_action('admin_init', 'check_plugin_state');注意:如果您想在前端添加include_once( ABSPATH . 'wp-admin/includes/plugin.php' );,请不要忘记。
发布于 2019-08-22 16:17:35
除了使用WordPress函数is_plugin_active()之外,您还可以使用PHP本机函数class_exists()。
在您的示例中,您必须传递轻松的数字下载主类名,即Easy_Digital_Downloads。所以,你得写
if(class_exists('Easy_Digital_Downloads')){
echo 'plugin is active';
}else{
echo 'plugin is not active';
}此外,您还可以使用PHP本机函数function_exists()。您必须传递轻松数字下载的主要功能EDD()作为参数。EDD()函数用于实例化轻松数字下载插件的主类。所以,你可以写
if(function_exists('EDD')){
echo 'plugin is active';
}else{
echo 'plugin is not active';
}https://stackoverflow.com/questions/48257175
复制相似问题