如何检查通过数据库启用了哪些插件?

时间:2017-11-23 作者:Chris Stryczynski

我想直接查询数据库,并确定启用了哪些插件。

我该怎么做?

3 个回复
SO网友:Drupalizeme

您可以这样做:

SQL

SELECT * FROM wp_options WHERE option_name = \'active_plugins\';
但更好的方法是WordPress方式:

Wordpress

if ( ! function_exists( \'get_plugins\' ) ) {
    require_once ABSPATH . \'wp-admin/includes/plugin.php\';
}

$active_plugins = get_option(\'active_plugins\');
$all_plugins = get_plugins();
$activated_plugins = array();

foreach ($active_plugins as $plugin){           
    if(isset($all_plugins[$plugin])){
         array_push($activated_plugins, $all_plugins[$plugin]);
    }           
}

SO网友:Piyush Rawat

您可以使用get_options(\'active_plugins\') 检索所有活动插件。

要检查某个插件是否处于活动状态,您可以这样使用它:

if (in_array( \'woocommerce/woocommerce.php\', apply_filters( \'active_plugins\', get_option( \'active_plugins\' ) ) )) { 
   //Woocommerce Active
}
else{
   //Woocommerce Deactive
}

SO网友:Chris Stryczynski

以下是以人类可读格式输出值的解决方案:

mysql -h 127.0.0.1 -u wordpress -p wordpress -ss --raw -N -e \'SELECT option_value FROM wp_options WHERE option_name="active_plugins"\' | php -r "var_dump(unserialize(stream_get_contents(STDIN)));"

结束

相关推荐

插件放置在/wp-content/plugins内的文件夹中时不保存值

我得到了WordPRess插件的以下代码,它在每个页面/后期编辑屏幕上添加了两个自定义输入。然后将这些值保存并输出到前端页面的标题中。如果代码位于内部,则可以正常工作。php文件并直接放入“wp内容/插件”。然而,如果我把它放在插件(如“wp-content/plugins/myplugin”)中自己的文件夹中,那么在通过编辑屏幕保存帖子/页面时,输入字段不会保存。此外,它不会向前端页面html标题部分输出任何内容。这似乎是一个被放弃的项目,所以我无法与原始开发人员一起制定解决方案。然而,代码中的某些内容