128 lines
5.6 KiB
PHP
128 lines
5.6 KiB
PHP
<?php
|
|
/**
|
|
* Plugin Name: WP Rocket
|
|
* Plugin URI: https://wp-rocket.me
|
|
* Description: The best WordPress performance plugin.
|
|
* Version: 3.7.5
|
|
* Code Name: Jakku
|
|
* Author: WP Media
|
|
* Author URI: https://wp-media.me
|
|
* Licence: GPLv2 or later
|
|
*
|
|
* Text Domain: rocket
|
|
* Domain Path: languages
|
|
*
|
|
* Copyright 2013-2019 WP Rocket
|
|
* */
|
|
|
|
defined( 'ABSPATH' ) || exit;
|
|
|
|
// Rocket defines.
|
|
define( 'WP_ROCKET_VERSION', '3.7.5' );
|
|
define( 'WP_ROCKET_WP_VERSION', '4.9' );
|
|
define( 'WP_ROCKET_WP_VERSION_TESTED', '5.5.1' );
|
|
define( 'WP_ROCKET_PHP_VERSION', '5.6' );
|
|
define( 'WP_ROCKET_PRIVATE_KEY' , '78db780987d9cb7d21377983945aa1c2');
|
|
define( 'WP_ROCKET_SLUG', 'wp_rocket_settings' );
|
|
define( 'WP_ROCKET_WEB_MAIN' , 'https://wp-rocket.me/');
|
|
define( 'WP_ROCKET_WEB_API', WP_ROCKET_WEB_MAIN . 'api/wp-rocket/' );
|
|
define( 'WP_ROCKET_WEB_CHECK', WP_ROCKET_WEB_MAIN . 'check_update.php' );
|
|
define( 'WP_ROCKET_WEB_VALID', WP_ROCKET_WEB_MAIN . 'valid_key.php' );
|
|
define( 'WP_ROCKET_WEB_INFO', WP_ROCKET_WEB_MAIN . 'plugin_information.php' );
|
|
define( 'WP_ROCKET_FILE', __FILE__ );
|
|
define( 'WP_ROCKET_PATH', realpath( plugin_dir_path( WP_ROCKET_FILE ) ) . '/' );
|
|
define( 'WP_ROCKET_INC_PATH', realpath( WP_ROCKET_PATH . 'inc/' ) . '/' );
|
|
|
|
require_once WP_ROCKET_INC_PATH . 'constants.php';
|
|
|
|
define( 'WP_ROCKET_DEPRECATED_PATH', realpath( WP_ROCKET_INC_PATH . 'deprecated/' ) . '/' );
|
|
define( 'WP_ROCKET_FRONT_PATH', realpath( WP_ROCKET_INC_PATH . 'front/' ) . '/' );
|
|
define( 'WP_ROCKET_ADMIN_PATH', realpath( WP_ROCKET_INC_PATH . 'admin' ) . '/' );
|
|
define( 'WP_ROCKET_ADMIN_UI_PATH', realpath( WP_ROCKET_ADMIN_PATH . 'ui' ) . '/' );
|
|
define( 'WP_ROCKET_ADMIN_UI_MODULES_PATH', realpath( WP_ROCKET_ADMIN_UI_PATH . 'modules' ) . '/' );
|
|
define( 'WP_ROCKET_COMMON_PATH', realpath( WP_ROCKET_INC_PATH . 'common' ) . '/' );
|
|
define( 'WP_ROCKET_FUNCTIONS_PATH', realpath( WP_ROCKET_INC_PATH . 'functions' ) . '/' );
|
|
define( 'WP_ROCKET_VENDORS_PATH', realpath( WP_ROCKET_INC_PATH . 'vendors' ) . '/' );
|
|
define( 'WP_ROCKET_3RD_PARTY_PATH', realpath( WP_ROCKET_INC_PATH . '3rd-party' ) . '/' );
|
|
if ( ! defined( 'WP_ROCKET_CONFIG_PATH' ) ) {
|
|
define( 'WP_ROCKET_CONFIG_PATH', WP_CONTENT_DIR . '/wp-rocket-config/' );
|
|
}
|
|
define( 'WP_ROCKET_URL', plugin_dir_url( WP_ROCKET_FILE ) );
|
|
define( 'WP_ROCKET_INC_URL', WP_ROCKET_URL . 'inc/' );
|
|
define( 'WP_ROCKET_ADMIN_URL', WP_ROCKET_INC_URL . 'admin/' );
|
|
define( 'WP_ROCKET_ASSETS_URL', WP_ROCKET_URL . 'assets/' );
|
|
define( 'WP_ROCKET_ASSETS_JS_URL', WP_ROCKET_ASSETS_URL . 'js/' );
|
|
define( 'WP_ROCKET_ASSETS_CSS_URL', WP_ROCKET_ASSETS_URL . 'css/' );
|
|
define( 'WP_ROCKET_ASSETS_IMG_URL', WP_ROCKET_ASSETS_URL . 'img/' );
|
|
|
|
if ( ! defined( 'WP_ROCKET_CACHE_ROOT_PATH' ) ) {
|
|
define( 'WP_ROCKET_CACHE_ROOT_PATH', WP_CONTENT_DIR . '/cache/' );
|
|
}
|
|
define( 'WP_ROCKET_CACHE_PATH', WP_ROCKET_CACHE_ROOT_PATH . 'wp-rocket/' );
|
|
define( 'WP_ROCKET_MINIFY_CACHE_PATH', WP_ROCKET_CACHE_ROOT_PATH . 'min/' );
|
|
define( 'WP_ROCKET_CACHE_BUSTING_PATH', WP_ROCKET_CACHE_ROOT_PATH . 'busting/' );
|
|
define( 'WP_ROCKET_CRITICAL_CSS_PATH', WP_ROCKET_CACHE_ROOT_PATH . 'critical-css/' );
|
|
|
|
if ( ! defined( 'WP_ROCKET_CACHE_ROOT_URL' ) ) {
|
|
define( 'WP_ROCKET_CACHE_ROOT_URL', WP_CONTENT_URL . '/cache/' );
|
|
}
|
|
define( 'WP_ROCKET_CACHE_URL', WP_ROCKET_CACHE_ROOT_URL . 'wp-rocket/' );
|
|
define( 'WP_ROCKET_MINIFY_CACHE_URL', WP_ROCKET_CACHE_ROOT_URL . 'min/' );
|
|
define( 'WP_ROCKET_CACHE_BUSTING_URL', WP_ROCKET_CACHE_ROOT_URL . 'busting/' );
|
|
|
|
if ( ! defined( 'CHMOD_WP_ROCKET_CACHE_DIRS' ) ) {
|
|
define( 'CHMOD_WP_ROCKET_CACHE_DIRS', 0755 ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals
|
|
}
|
|
if ( ! defined( 'WP_ROCKET_LASTVERSION' ) ) {
|
|
define( 'WP_ROCKET_LASTVERSION', '3.6.4' );
|
|
}
|
|
|
|
/**
|
|
* We use is_readable() with @ silencing as WP_Filesystem() can use different methods to access the filesystem.
|
|
*
|
|
* This is more performant and more compatible. It allows us to work around file permissions and missing credentials.
|
|
*/
|
|
if ( @is_readable( WP_ROCKET_PATH . 'licence-data.php' ) ) { //phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged
|
|
@include WP_ROCKET_PATH . 'licence-data.php'; //phpcs:ignore WordPress.PHP.NoSilencedErrors.Discouraged
|
|
}
|
|
|
|
require WP_ROCKET_INC_PATH . 'compat.php';
|
|
require WP_ROCKET_INC_PATH . 'classes/class-wp-rocket-requirements-check.php';
|
|
|
|
/**
|
|
* Loads WP Rocket translations
|
|
*
|
|
* @since 3.0
|
|
* @author Remy Perona
|
|
*
|
|
* @return void
|
|
*/
|
|
function rocket_load_textdomain() {
|
|
// Load translations from the languages directory.
|
|
$locale = get_locale();
|
|
|
|
// This filter is documented in /wp-includes/l10n.php.
|
|
$locale = apply_filters( 'plugin_locale', $locale, 'rocket' ); // phpcs:ignore WordPress.NamingConventions.PrefixAllGlobals
|
|
load_textdomain( 'rocket', WP_LANG_DIR . '/plugins/wp-rocket-' . $locale . '.mo' );
|
|
|
|
load_plugin_textdomain( 'rocket', false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' );
|
|
}
|
|
add_action( 'plugins_loaded', 'rocket_load_textdomain' );
|
|
|
|
$wp_rocket_requirement_checks = new WP_Rocket_Requirements_Check(
|
|
[
|
|
'plugin_name' => 'WP Rocket',
|
|
'plugin_file' => WP_ROCKET_FILE,
|
|
'plugin_version' => WP_ROCKET_VERSION,
|
|
'plugin_last_version' => WP_ROCKET_LASTVERSION,
|
|
'wp_version' => WP_ROCKET_WP_VERSION,
|
|
'php_version' => WP_ROCKET_PHP_VERSION,
|
|
]
|
|
);
|
|
|
|
if ( $wp_rocket_requirement_checks->check() ) {
|
|
require WP_ROCKET_INC_PATH . 'main.php';
|
|
}
|
|
|
|
unset( $wp_rocket_requirement_checks );
|