0

プラグインがデフォルトのパスにない可能性があるため、Wordpress から is_plugin_active() を使用せずにプラグインがアクティブかどうかを確認したい。代わりにプラグインのバージョン定数を使用して確認したいと思います (これは利用可能です)。ACME_VERSION などの定数を持つ他のプラグインがあります。このプラグインが別のプラグインでアクティブ化されているかどうかを確認するために、定義された PHP を使用しています。

if(defined('ACME_VERSION')) {
//plugin is activated, add the hooks
}

しかし、それは機能していません。WP_DEBUG などの他の Wordpress 定数は true を返します (wp-config で有効にしました)。

何か不足していますか?これを行う適切な方法は何ですか?ヒントをありがとう。

4

1 に答える 1

0

定数を定義する前にテストしている可能性があります (たとえば、プラグインが他のプラグインの前にロードされます)。'init' アクションなど、アクション フックによって呼び出される関数内にテストを配置します。

add_action('init', 'my_plugin_init');
function my_plugin_init() {
    if(defined('ACME_VERSION')) {
        //plugin is activated, add the hooks
    }
}
于 2012-12-11T03:47:02.603 に答える