boot(); } /** * Check plugin requirements */ function focuson_advancedcoupons_check_requirements() { if (!is_woocommerce_activated()) { deactivate_plugins(plugin_basename(__FILE__)); // Mostra messaggio di errore wp_die( sprintf( /* translators: 1. URL link. */ esc_html__('Advanced Coupons for WooCommerce requires %1$sWooCommerce%2$s to be installed and activated. The plugin has been deactivated.', 'advanced-coupons-for-woocommerce'), '', '' ), esc_html__('Plugin Activation Error', 'advanced-coupons-for-woocommerce'), ['back_link' => true] ); } } /** * Display an error message and deactivate the plugin */ function focuson_advancedcoupons_display_error_and_deactivate($message) { add_action('admin_notices', function() use ($message) { echo '

Woo Advanced Discounts: ' . esc_html($message) . '

'; }); deactivate_plugins(plugin_basename(__FILE__)); } /** * Declare compatibility with WooCommerce custom order tables */ function focuson_advancedcoupons_declare_woocommerce_compatibility() { if (class_exists(\Automattic\WooCommerce\Utilities\FeaturesUtil::class)) { \Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility('custom_order_tables', __FILE__, true); } } /** * Check if WooCommerce is active. * * @return bool true if WooCommerce is active, otherwise false. */ function is_woocommerce_activated(): bool { return class_exists( 'woocommerce' ); } add_action('deactivated_plugin', 'focuson_advancedcoupons_on_woocommerce_deactivation'); function focuson_advancedcoupons_on_woocommerce_deactivation($plugin, $network_deactivating) { if ($plugin === 'woocommerce/woocommerce.php') { deactivate_plugins(plugin_basename(__FILE__)); } }