=' ); global $wp_version; $wp_ok = isset( $wp_version ) && version_compare( $wp_version, BOOKLINE_MIN_WP, '>=' ); if ( $php_ok && $wp_ok ) { return; } $message = sprintf( /* translators: 1: minimum PHP version, 2: minimum WordPress version */ __( 'Buildler requires PHP %1$s or later and WordPress %2$s or later.', 'buildler' ), BOOKLINE_MIN_PHP, BOOKLINE_MIN_WP ); printf( '

%s

', esc_html( $message ) ); } $bookline_php_ok = version_compare( PHP_VERSION, BOOKLINE_MIN_PHP, '>=' ); global $wp_version; $bookline_wp_ok = isset( $wp_version ) && version_compare( $wp_version, BOOKLINE_MIN_WP, '>=' ); if ( ! $bookline_php_ok || ! $bookline_wp_ok ) { add_action( 'admin_notices', 'bookline_requirements_unmet' ); return; } $bookline_autoload = BOOKLINE_PATH . 'vendor/autoload.php'; if ( ! is_readable( $bookline_autoload ) ) { add_action( 'admin_notices', static function (): void { if ( ! current_user_can( 'activate_plugins' ) ) { return; } printf( '

%s

', esc_html__( 'Bookline cannot load: run composer install in the plugin directory.', 'buildler' ) ); } ); return; } require_once $bookline_autoload; $bookline_as = BOOKLINE_PATH . 'vendor/woocommerce/action-scheduler/action-scheduler.php'; if ( is_readable( $bookline_as ) ) { require_once $bookline_as; } \Bookline\Plugin::boot( BOOKLINE_FILE ); // Commercial zip only. The WordPress.org pack omits packages/pro/. $bookline_licence = BOOKLINE_PATH . 'packages/pro/licence.php'; if ( is_readable( $bookline_licence ) ) { require_once $bookline_licence; }