web-dev-qa-db-ja.com

どのWordPress API関数がアクティブ/非アクティブプラグインをリストしますか?

WordPressコアで何千もの便利なAPI関数を見た後、私は今日、アクティブなプラグインをリストする関数がないことを発見して驚きました。私はあなたを知らないが、私はそれに非常に驚いている。

それを見逃す理由があるかどうか私は思っていましたか?もしそうなら、私はそれについて知りたいのですが。

そして、あなたが知っている簡単なPHPスニペットがあれば、アクティブなプラグインのリストを得ることができます(get_post_types('','names');がCPTの場合やget_taxonomies('','names');がCTの場合と同じように)。あなたがコードを提供するならば。

5
Average Joe

wp_get_active_and_valid_plugins()

get_plugins()

get_option('active_plugins')

6
onetrickpony

彼の答えに記載されているOTPのようなプラグインのリストを取得するための複数のWordPress Apisがあります。

get_plugins() :プラグインディレクトリをチェックして、プラグインデータを含むすべてのプラグインファイルを取得します。配列を返します。 注: 管理者側でのみ機能します。

例:

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-content/pluginsへの相対パスを返します。

例:

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

戻り値:

  • debug-bar-extender/debug-bar-extender.php
  • debug-bar/debug-bar.php
  • log-deprecated-notices/log-deprecated-notices.php
  • 管理ポストスケジュール/管理ポストスケジュール.php
  • wp-coda-slider/wpcodaslider.php

プラグインステータスに関連するその他のAPI機能:

8
Chris_O