%s

', esc_html( $message ) ); } /** * Display WordPress version notice. * * @return void */ function wp_prometheus_wp_version_notice(): void { $message = sprintf( /* translators: 1: Required WordPress version, 2: Current WordPress version */ __( 'WP Prometheus requires WordPress version %1$s or higher. You are running WordPress %2$s.', 'wp-prometheus' ), WP_PROMETHEUS_MIN_WP_VERSION, get_bloginfo( 'version' ) ); printf( '

%s

', esc_html( $message ) ); } /** * Display autoloader notice. * * @return void */ function wp_prometheus_autoloader_notice(): void { $message = __( 'WP Prometheus requires Composer dependencies to be installed. Please run "composer install" in the plugin directory.', 'wp-prometheus' ); printf( '

%s

', esc_html( $message ) ); } /** * Plugin activation hook. * * @return void */ function wp_prometheus_activate(): void { // Check requirements before activation. if ( version_compare( PHP_VERSION, WP_PROMETHEUS_MIN_PHP_VERSION, '<' ) ) { deactivate_plugins( WP_PROMETHEUS_BASENAME ); wp_die( sprintf( /* translators: %s: Required PHP version */ esc_html__( 'WP Prometheus requires PHP version %s or higher.', 'wp-prometheus' ), WP_PROMETHEUS_MIN_PHP_VERSION ) ); } $autoloader = WP_PROMETHEUS_PATH . 'vendor/autoload.php'; if ( file_exists( $autoloader ) ) { require_once $autoloader; \Magdev\WpPrometheus\Installer::activate(); } } /** * Plugin deactivation hook. * * @return void */ function wp_prometheus_deactivate(): void { $autoloader = WP_PROMETHEUS_PATH . 'vendor/autoload.php'; if ( file_exists( $autoloader ) ) { require_once $autoloader; \Magdev\WpPrometheus\Installer::deactivate(); } } /** * Plugin uninstall hook. * * @return void */ function wp_prometheus_uninstall(): void { $autoloader = WP_PROMETHEUS_PATH . 'vendor/autoload.php'; if ( file_exists( $autoloader ) ) { require_once $autoloader; \Magdev\WpPrometheus\Installer::uninstall(); } } // Register activation/deactivation hooks. register_activation_hook( __FILE__, 'wp_prometheus_activate' ); register_deactivation_hook( __FILE__, 'wp_prometheus_deactivate' ); // Initialize plugin after all plugins are loaded. add_action( 'plugins_loaded', 'wp_prometheus_init' );