Cum verifici dacă un plugin WordPress este activ sau nu?

21 apr. 2011, 15:35:18
Vizualizări: 28.8K
Voturi: 4

Folosesc plugin-ul mingle și plugin-ul mingle-forum.

Vreau să afișez o anumită secțiune pe site-ul meu doar dacă aceste două plugin-uri sunt active. Cum pot rezolva acest lucru?

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

Acest cod generează o eroare PHP: Call to undefined function is_plugin_active

Aveți vreo idee ce fac greșit?

actualizare:

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

Unde (în ce fișier sau hook) folosești această funcție?

Ján Bočínec Ján Bočínec
21 apr. 2011 15:51:15
Toate răspunsurile la întrebare 5
3

Această funcție există în wp-admin/includes/plugin.php, așa că presupun că nu este inclusă de tema.

Poți fie să o require, fie să creezi propria versiune a ei - vezi aici: http://wordpress.org/support/topic/is_plugin_active

ACTUALIZAT:

Te rog verifică is_plugin_active

21 apr. 2011 16:02:35
Comentarii

mulțumesc, poate am găsit o soluție dar încă nu funcționează. Funcția plugin_active este definită în fișierul meu functions.php și nu aruncă nicio eroare. Totuși, div.login NU apare NICIODATĂ, indiferent dacă pluginul este activ sau nu. Poate verific calea greșită? Ai vreo idee ce aș putea greși aici?

mathiregister mathiregister
22 apr. 2011 10:41:09

am găsit soluția. "plugin-directory" trebuie să fie desigur numele directorului unde se află fișierul real al pluginului. Credeam că "plugin-directory" este calea către directorul unde se află toate fișierele pluginului.

mathiregister mathiregister
22 apr. 2011 10:43:05

exact mathiregster, asta pare să scape tuturor aici. plugin-directory cel mai probabil va fi numele pluginului tău

Tim Hallman Tim Hallman
15 sept. 2021 17:20:58
1

Există două modalități prin care poți verifica dacă un plugin este activ sau nu.

  1. Poți folosi funcția is_plugin_active pentru a verifica dacă pluginul este activ sau nu.
  2. Dacă pluginul are o clasă, atunci poți verifica astfel:

    if (class_exists('YITH_Woocompare_Frontend')) 
    {
    echo 'codul tău';
    }
    

Clasa menționată mai sus este legată de pluginul YITH WooCommerce Compare. Codul de mai sus verifică dacă clasa există și abia atunci va executa codul din interiorul acoladelor.

3 aug. 2016 09:04:16
Comentarii

eram pe punctul de a vota pozitiv, dar chestia cu clasa este complet falsă. Ce se întâmplă dacă numele clasei este schimbat? iar is_plugin_active este practic răspunsul acceptat :(

Mark Kaplun Mark Kaplun
3 aug. 2016 09:50:07
2

Puteți încerca, de asemenea, să verificați dacă un plugin este activ sau nu

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

Încercați, de asemenea, următorul cod pentru simplitate

if ( is_plugin_active( 'PLUGIN_DIR/FILE_NAME.php' ) ) {
  //pluginul este activat
} 
23 ian. 2015 09:40:45
Comentarii

Posterul nu a putut utiliza is_plugin_active deoarece este disponibil doar din paginile de administrare.

jeteon jeteon
13 oct. 2015 12:06:41

Această soluție m-a ajutat să verific numele pluginului. Mulțumesc.

Memonic Memonic
23 apr. 2020 19:02:43
1

Puteți folosi simplu funcția implicită din WordPress. Această funcție se află în wp-admin/includes/plugin.php.

Pur și simplu treceți calea către fișierul pluginului relativă la directorul de plugin-uri.

$pluginPath = 'akismet/akismet.php';
if ( is_plugin_active( $pluginPath ) ) {
    echo 'Plugin-ul este activat';
} else {
   echo 'Plugin-ul nu este activat';
}

Pentru mai multe detalii despre is_plugin_active, vă rugăm să consultați linkul de mai jos:

https://developer.wordpress.org/reference/functions/is_plugin_active/

30 oct. 2019 10:15:28
Comentarii

Mulțumesc, @Sohel Khan; acel indiciu a fost cu adevărat util pentru mine; l-am folosit pentru a începe să construiesc o bară de viață pentru site-ul meu :) Noroc!

eLeXeM eLeXeM
14 nov. 2020 20:03:53
1

modul corect și actual de a verifica dacă un plugin este activ sau nu este prin setarea unei

function_exists()

funcții pentru codul tău

14 oct. 2021 14:37:42
Comentarii

Bine ați venit pe wpse! modul corect și actual de a verifica dacă un plugin este activ sau nu este prin utilizarea funcției function_exists. Dar dacă un plugin este orientat pe obiecte (OO) și nu folosește nicio funcție, ci doar metode, răspunsul tău nu abordează această situație.

Buttered_Toast Buttered_Toast
14 oct. 2021 16:16:43