wp-staging-pro if (!defined('WPSTG_PLUGIN_SLUG')) { define('WPSTG_PLUGIN_SLUG', basename(dirname($pluginFilePath))); } // An identifier that is the same both for WP STAGING Free and WP STAGING | PRO if (!defined('WPSTG_PLUGIN_DOMAIN')) { define('WPSTG_PLUGIN_DOMAIN', 'wp-staging'); } // Absolute path to the views folder /var/www/.../plugins/wp-staging(-pro)/views/ if (!defined('WPSTG_VIEWS_DIR')) { define('WPSTG_VIEWS_DIR', WPSTG_PLUGIN_DIR . 'views/'); } // Absolute path to the resources folder /var/www/.../plugins/wp-staging(-pro)/resources/ if (!defined('WPSTG_RESOURCES_DIR')) { define('WPSTG_RESOURCES_DIR', WPSTG_PLUGIN_DIR . 'resources/'); } // Define WordPress default constants if not already defined in outdated WP version for backward compatibility if (!defined('KB_IN_BYTES')) { define('KB_IN_BYTES', 1024); } if (!defined('MB_IN_BYTES')) { define('MB_IN_BYTES', 1024 * KB_IN_BYTES); } if (!defined('GB_IN_BYTES')) { define('GB_IN_BYTES', 1024 * MB_IN_BYTES); } if (!defined('MINUTE_IN_SECONDS')) { define('MINUTE_IN_SECONDS', 60); } if (!defined('HOUR_IN_SECONDS')) { define('HOUR_IN_SECONDS', 60 * MINUTE_IN_SECONDS); } if (!defined('DAY_IN_SECONDS')) { define('DAY_IN_SECONDS', 24 * HOUR_IN_SECONDS); } if (!defined('WEEK_IN_SECONDS')) { define('WEEK_IN_SECONDS', 7 * DAY_IN_SECONDS); } if (!defined('MONTH_IN_SECONDS')) { define('MONTH_IN_SECONDS', 30 * DAY_IN_SECONDS); } if (!defined('YEAR_IN_SECONDS')) { define('YEAR_IN_SECONDS', 365 * DAY_IN_SECONDS); } /** * Register specific Pro and Free constants. We register them here instead of on the * entrypoint because we want to make sure we are defining constants for the plugins * actually being bootstrapped. */ if (file_exists(__DIR__ . '/constantsPro.php')) { include_once __DIR__ . '/constantsPro.php'; } elseif (file_exists(__DIR__ . '/constantsFree.php')) { include_once __DIR__ . '/constantsFree.php'; } if (!function_exists('\WPStaging\functions\debug_log') && file_exists(__DIR__ . '/wp-staging-error-handler.php')) { include_once __DIR__ . '/wp-staging-error-handler.php'; } // This is needed otherwise unit tests doesn't work because of new DI52 library if (php_sapi_name() === "cli" && defined("WPSTG_UNIT_TESTS") && constant("WPSTG_UNIT_TESTS")) { WPStaging::setUseBaseContainerSingleton(true); } $wpStaging = WPStaging::getInstance(); $wpStaging->registerErrorHandler(); /* * Set the WPSTG_COMPATIBLE constant in the container, * so that we can change it for testing purposes. */ $wpStaging->set('WPSTG_COMPATIBLE', WPSTG_COMPATIBLE); /* * Used during testing to enable virtual filesystem. */ $wpStaging->set('WPSTG_ALLOW_VFS', false); // Wordpress DB Object global $wpdb; if ($wpdb instanceof wpdb) { $wpStaging->set("wpdb", $wpdb); }