. * * @author Arindo Duque and NextPress * @category Core * @package WP_Ultimo * @version 2.3.4 */ // Exit if accessed directly defined('ABSPATH') || exit; if ( defined('WP_SANDBOX_SCRAPING') && WP_SANDBOX_SCRAPING ) { require_once ABSPATH . 'wp-admin/includes/plugin.php'; if ( is_plugin_active( 'wp-ultimo/wp-ultimo.php' ) ) { // old plugin still installed and active with the old name and path // and the user is trying to activate this plugin. So deactivate and return. deactivate_plugins( 'wp-ultimo/wp-ultimo.php', true, true); if ( file_exists(WP_CONTENT_DIR . '/sunrise.php')) { // We must override the old sunrise file or more name conflicts will occur. copy(__DIR__ . '/sunrise.php', WP_CONTENT_DIR . '/sunrise.php'); } return; } } if (!defined('WP_ULTIMO_PLUGIN_FILE')) { define('WP_ULTIMO_PLUGIN_FILE', __FILE__); } /** * Require core file dependencies */ require_once __DIR__ . '/constants.php'; require_once __DIR__ . '/vendor/autoload_packages.php'; require_once __DIR__ . '/vendor/woocommerce/action-scheduler/action-scheduler.php'; require_once __DIR__ . '/inc/traits/trait-singleton.php'; /** * Setup activation/deactivation hooks */ WP_Ultimo\Hooks::init(); if ( ! function_exists('WP_Ultimo')) { /** * Initializes the WP Ultimo class * * This function returns the WP_Ultimo class singleton, and * should be used to avoid declaring globals. * * @return WP_Ultimo * @since 2.0.0 */ function WP_Ultimo() { // phpcs:ignore return WP_Ultimo::get_instance(); } // end WP_Ultimo; } // Initialize and set to global for back-compat $GLOBALS['WP_Ultimo'] = WP_Ultimo();