¿Cómo verificar si el complemento WooCommerce está habilitado?

1 minuto de lectura

Avatar de usuario de IRDN
IRDN

Estoy tratando de verificar si el complemento WooCommerce está activo y luego agregar algunas opciones al panel de opciones. pero este código no funciona bien.

¿Acaso alguien puede decirme que está mal? Gracias.

 if( class_exists( 'WooCommerce' )) {//add options}

Pruebe lo siguiente en su lugar:

if ( in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) {
    // Yes, WooCommerce is enabled
} else {
    // WooCommerce is NOT enabled!
}

  • muchas gracias funciona. y ¿podría decirme por qué ese código no funciona? todos los desarrolladores que veo usan eso y funciona de verdad.

    – IRDN

    25 de febrero de 2021 a las 9:01

  • Depende del contexto y de dónde estés usando el código… También ten cuidado cuando digas “Todos los desarrolladores…” ya que la mayoría de ellos no son realmente desarrolladores…

    – LoicTheAztec

    25 de febrero de 2021 a las 10:35


  • Esta respuesta es realmente genial porque funciona todo el tiempo, mientras que la clase existe de manera que solo funciona si Woocommerce ya está cargado.

    – Stiegui

    6 oct a las 18:49

Alternativamente, la función is_plugin_active El método se puede usar para verificar si un complemento está activo.

if ( is_plugin_active( 'woocommerce/woocommerce.php' ) ) {
    // woocommerce is active
} else {
    // woocommerce is not active
}

Otro método documentado en WooCommerce es la siguiente opción.

/**
 * Check if WooCommerce is activated
 */
if ( ! function_exists( 'is_woocommerce_activated' ) ) {
    function is_woocommerce_activated() {
        if ( class_exists( 'woocommerce' ) ) { return true; } else { return false; }
    }
}

¿Ha sido útil esta solución?