. */ // Exit if not loaded inside a WordPress context defined('ABSPATH') or exit; // Exit if PHP lower than 7.4 PHP_VERSION_ID >= 70400 or exit; define('BOXZILLA_FILE', __FILE__); define('BOXZILLA_DIR', __DIR__); define('BOXZILLA_VERSION', '3.4.11'); require __DIR__ . '/autoload.php'; require __DIR__ . '/src/services.php'; require __DIR__ . '/src/licensing/services.php'; // register activation hook register_activation_hook(__FILE__, [ 'Boxzilla\\Admin\\Installer', 'run' ]); register_deactivation_hook(__FILE__, [ 'Boxzilla\\Licensing\\Poller', 'deactivate' ]); // Bootstrap plugin at later action hook add_action( 'plugins_loaded', function () { $boxzilla = boxzilla(); // load default filters require __DIR__ . '/src/default-filters.php'; require __DIR__ . '/src/default-actions.php'; if (wp_doing_ajax()) { $boxzilla['filter.autocomplete']->init(); $boxzilla['admin.menu']->init(); } elseif (wp_doing_cron()) { $boxzilla['license_poller']->init(); } elseif (is_admin()) { $boxzilla['admin']->init(); $boxzilla['admin.menu']->init(); } else { add_action( 'template_redirect', function () use ($boxzilla) { $boxzilla['box_loader']->init(); } ); } // license manager if (is_admin() || wp_doing_cron() || ( defined('WP_CLI') && WP_CLI )) { $boxzilla['license_manager']->init(); if (count($boxzilla->plugins) > 0) { $boxzilla['update_manager']->init(); } } }, 90 );