哪个WordPress API函数列出了活动/非活动插件?

时间:2012-05-15 作者:Average Joe

在WordPress内核中看到数千个有用的API函数后,我今天惊讶地发现,没有一个函数可以列出活动插件。我不认识你,但我很惊讶。

我想知道错过这一点是否有原因?如果是,我想知道。

而且,如果您知道有一个快速的PHP代码片段,它可以为您提供一个活动插件列表(与get_post_types(\'\',\'names\'); 用于CPT或get_taxonomies(\'\',\'names\'); 如果您提供代码,我将不胜感激。

2 个回复
最合适的回答,由SO网友:onetrickpony 整理而成

wp_get_active_and_valid_plugins()

get_plugins()

and get_option(\'active_plugins\')

SO网友:Chris_O

有多个WordPress API可以获取他回答中列出的OTP等插件列表

get_plugins() :检查插件目录并检索所有包含插件数据的插件文件。返回数组。Note: 仅适用于管理端

示例:

function list_the_plugins() {
    $plugins = get_plugins();
        foreach ( $plugins as $plugin ) {
        var_dump( $plugin );
    }
返回值:

array
  \'Name\' => string \'WP Coda Slider\' (length=14)
  \'PluginURI\' => string \'http://c3mdigital.com/wp-coda-slider/\' (length=37)
  \'Version\' => string \'0.3.2\' (length=5)
  \'Description\' => string \'Add a jQuery Coda slider to any WordPress post or page\' (length=54)
  \'Author\' => string \'c3mdigital\' (length=10)
  \'AuthorURI\' => string \'http://c3mdigital.com/\' (length=22)
  \'TextDomain\' => string \'\' (length=0)
  \'DomainPath\' => string \'\' (length=0)
  \'Network\' => boolean false
  \'Title\' => string \'WP Coda Slider\' (length=14)
  \'AuthorName\' => string \'c3mdigital\' (length=10)
get_option( \'active_plugins\' ) 返回相对于插件文件的wp内容/插件的路径:

示例:

function list_the_plugins() {
    $plugins = get_option ( \'active_plugins\', array () );
    foreach ( $plugins as $plugin ) {
        echo "<li>$plugin</li>";
    }
}
返回值:

调试条扩展器/调试条扩展器。php调试栏/调试栏。php记录弃用通知/记录弃用通知。php管理post时间表/管理post时间表。php尾码滑块/尾码滑块。php与插件状态相关的其他API函数:is_plugin_active() 检查插件是否处于活动状态is_plugin_inactive() 检查插件是否处于非活动状态is_plugin_active_for_network() 检查插件是否已通过网络激活validate_active_plugins() 检查所有活动插件并停用无效插件get_dropins() 获取wp content文件夹中的插件get_mu_plugins() GET必须使用插件

结束

相关推荐

从非核心php文件访问BloInfo、Get_Option和plugins_url

我正在创建一个插件,插件目录中有一个php文件,可以通过自定义重写url直接访问该文件。我需要这个文件能够使用标题中提到的三个功能。目前,我正在包括wp负载。php文件,它使我能够访问所有这些函数。然而,我一直在读到不应该包括wp负载,因为它可能不总是在同一个位置,而且它包括可能不需要的wordpress文件。这就是我如何包含wp负载:$wp_base = explode($_SERVER[\'PHP_SELF\'], $_SERVER[\'SCRIPT_FILENAME\']); require