web-dev-qa-db-ja.com

プラグインがアクティビティーからプラグインが有効になっているかどうかを確認しますか?

私はmingleプラグインとmingle-forumプラグインを使用しています。

これら2つのプラグインがアクティブになっている場合にのみ私のサイトに特定の部分を表示したいどうすればこれを解決できますか?

<?php if ( is_plugin_active('mingle-forum') ) { ?>
                    <div id="login"><?php include (TEMPLATEPATH . '/inc/userlogin.php' ); ?></div>
                <?php } ?>

これはphpエラーを投げます。未定義の関数is_plugin_activeを呼び出す

何がおかしいのですか?

更新:

<?php if ( plugin_active('plugin-directory/mingle-forum/wpf-main.php') ) { ?>
                    <div id="login"><?php include (TEMPLATEPATH . '/inc/userlogin.php' ); ?></div>
                <?php } ?>
1
mathiregister

この機能はwp-admin/includes/plugin.phpにありますので、私はそれがテーマに含まれていないと思います。

あなたはそれをrequireするか、単にそれ自身のバージョンを作ることができます - ここを見てください: http://wordpress.org/support/topic/is_plugin_active

更新しました:

参照を確認してください

3
anu

プラグインがアクティブかどうかを確認することもできます。

$pluginList = get_option( 'active_plugins' );
$plugin = 'PLUGIN_DIR/FILE_NAME.php'; 
if ( in_array( $plugin , $pluginList ) ) {
    // Plugin 'mg-post-contributors' is Active
}

簡単にするために以下のコードも試してください

if ( is_plugin_active( 'PLUGIN_DIR/FILE_NAME.php' ) ) {
  //plugin is activated
} 
1
maheshwaghmare

プラグインがアクティブかどうかを確認する方法は2つあります。

  1. プラグインがアクティブかどうかをチェックするには、is_plugin_active関数を使用できます。
  2. プラグインがクラスを持っているなら、あなたは以下のようにチェックすることができます -

    if (class_exists('YITH_Woocompare_Frontend')) 
    {
    echo 'your code';
    }
    

上記のクラスはYITH WooCommerce Compareプラグインに関連しています。上記のコードでクラスが存在するかどうかをチェックすると、括弧内のコードだけが実行されます。

1
pallavi