wp/wp-settings.php
changeset 16 a86126ab1dd4
parent 9 177826044cd9
child 18 be944660c56a
equal deleted inserted replaced
15:3d4e9c994f10 16:a86126ab1dd4
    13  *
    13  *
    14  * @since 1.0.0
    14  * @since 1.0.0
    15  */
    15  */
    16 define( 'WPINC', 'wp-includes' );
    16 define( 'WPINC', 'wp-includes' );
    17 
    17 
    18 // Include files required for initialization.
    18 /**
    19 require( ABSPATH . WPINC . '/load.php' );
    19  * Version information for the current WordPress release.
    20 require( ABSPATH . WPINC . '/class-wp-paused-extensions-storage.php' );
    20  *
    21 require( ABSPATH . WPINC . '/class-wp-fatal-error-handler.php' );
       
    22 require( ABSPATH . WPINC . '/class-wp-recovery-mode-cookie-service.php' );
       
    23 require( ABSPATH . WPINC . '/class-wp-recovery-mode-key-service.php' );
       
    24 require( ABSPATH . WPINC . '/class-wp-recovery-mode-link-service.php' );
       
    25 require( ABSPATH . WPINC . '/class-wp-recovery-mode-email-service.php' );
       
    26 require( ABSPATH . WPINC . '/class-wp-recovery-mode.php' );
       
    27 require( ABSPATH . WPINC . '/error-protection.php' );
       
    28 require( ABSPATH . WPINC . '/default-constants.php' );
       
    29 require_once( ABSPATH . WPINC . '/plugin.php' );
       
    30 
       
    31 /*
       
    32  * These can't be directly globalized in version.php. When updating,
    21  * These can't be directly globalized in version.php. When updating,
    33  * we're including version.php from another installation and don't want
    22  * we're including version.php from another installation and don't want
    34  * these values to be overridden if already set.
    23  * these values to be overridden if already set.
       
    24  *
       
    25  * @global string $wp_version             The WordPress version string.
       
    26  * @global int    $wp_db_version          WordPress database version.
       
    27  * @global string $tinymce_version        TinyMCE version.
       
    28  * @global string $required_php_version   The required PHP version string.
       
    29  * @global string $required_mysql_version The required MySQL version string.
       
    30  * @global string $wp_local_package       Locale code of the package.
    35  */
    31  */
    36 global $wp_version, $wp_db_version, $tinymce_version, $required_php_version, $required_mysql_version, $wp_local_package;
    32 global $wp_version, $wp_db_version, $tinymce_version, $required_php_version, $required_mysql_version, $wp_local_package;
    37 require( ABSPATH . WPINC . '/version.php' );
    33 require ABSPATH . WPINC . '/version.php';
       
    34 require ABSPATH . WPINC . '/load.php';
       
    35 
       
    36 // Check for the required PHP version and for the MySQL extension or a database drop-in.
       
    37 wp_check_php_mysql_versions();
       
    38 
       
    39 // Include files required for initialization.
       
    40 require ABSPATH . WPINC . '/class-wp-paused-extensions-storage.php';
       
    41 require ABSPATH . WPINC . '/class-wp-fatal-error-handler.php';
       
    42 require ABSPATH . WPINC . '/class-wp-recovery-mode-cookie-service.php';
       
    43 require ABSPATH . WPINC . '/class-wp-recovery-mode-key-service.php';
       
    44 require ABSPATH . WPINC . '/class-wp-recovery-mode-link-service.php';
       
    45 require ABSPATH . WPINC . '/class-wp-recovery-mode-email-service.php';
       
    46 require ABSPATH . WPINC . '/class-wp-recovery-mode.php';
       
    47 require ABSPATH . WPINC . '/error-protection.php';
       
    48 require ABSPATH . WPINC . '/default-constants.php';
       
    49 require_once ABSPATH . WPINC . '/plugin.php';
    38 
    50 
    39 /**
    51 /**
    40  * If not already configured, `$blog_id` will default to 1 in a single site
    52  * If not already configured, `$blog_id` will default to 1 in a single site
    41  * configuration. In multisite, it will be overridden by default in ms-settings.php.
    53  * configuration. In multisite, it will be overridden by default in ms-settings.php.
    42  *
    54  *
    49 wp_initial_constants();
    61 wp_initial_constants();
    50 
    62 
    51 // Make sure we register the shutdown handler for fatal errors as soon as possible.
    63 // Make sure we register the shutdown handler for fatal errors as soon as possible.
    52 wp_register_fatal_error_handler();
    64 wp_register_fatal_error_handler();
    53 
    65 
    54 // Check for the required PHP version and for the MySQL extension or a database drop-in.
       
    55 wp_check_php_mysql_versions();
       
    56 
       
    57 // Disable magic quotes at runtime. Magic quotes are added using wpdb later in wp-settings.php.
       
    58 @ini_set( 'magic_quotes_runtime', 0 );
       
    59 @ini_set( 'magic_quotes_sybase', 0 );
       
    60 
       
    61 // WordPress calculates offsets from UTC.
    66 // WordPress calculates offsets from UTC.
       
    67 // phpcs:ignore WordPress.DateTime.RestrictedFunctions.timezone_change_date_default_timezone_set
    62 date_default_timezone_set( 'UTC' );
    68 date_default_timezone_set( 'UTC' );
    63 
       
    64 // Turn register_globals off.
       
    65 wp_unregister_GLOBALS();
       
    66 
    69 
    67 // Standardize $_SERVER variables across setups.
    70 // Standardize $_SERVER variables across setups.
    68 wp_fix_server_vars();
    71 wp_fix_server_vars();
    69 
    72 
    70 // Check if we have received a request due to missing favicon.ico
       
    71 wp_favicon_request();
       
    72 
       
    73 // Check if we're in maintenance mode.
    73 // Check if we're in maintenance mode.
    74 wp_maintenance();
    74 wp_maintenance();
    75 
    75 
    76 // Start loading timer.
    76 // Start loading timer.
    77 timer_start();
    77 timer_start();
    88  * @since 4.6.0
    88  * @since 4.6.0
    89  *
    89  *
    90  * @param bool $enable_advanced_cache Whether to enable loading advanced-cache.php (if present).
    90  * @param bool $enable_advanced_cache Whether to enable loading advanced-cache.php (if present).
    91  *                                    Default true.
    91  *                                    Default true.
    92  */
    92  */
    93 if ( WP_CACHE && apply_filters( 'enable_loading_advanced_cache_dropin', true ) ) {
    93 if ( WP_CACHE && apply_filters( 'enable_loading_advanced_cache_dropin', true ) && file_exists( WP_CONTENT_DIR . '/advanced-cache.php' ) ) {
    94 	// For an advanced caching plugin to use. Uses a static drop-in because you would only want one.
    94 	// For an advanced caching plugin to use. Uses a static drop-in because you would only want one.
    95 	WP_DEBUG ? include( WP_CONTENT_DIR . '/advanced-cache.php' ) : @include( WP_CONTENT_DIR . '/advanced-cache.php' );
    95 	include WP_CONTENT_DIR . '/advanced-cache.php';
    96 
    96 
    97 	// Re-initialize any hooks added manually by advanced-cache.php
    97 	// Re-initialize any hooks added manually by advanced-cache.php.
    98 	if ( $wp_filter ) {
    98 	if ( $wp_filter ) {
    99 		$wp_filter = WP_Hook::build_preinitialized_hooks( $wp_filter );
    99 		$wp_filter = WP_Hook::build_preinitialized_hooks( $wp_filter );
   100 	}
   100 	}
   101 }
   101 }
   102 
   102 
   103 // Define WP_LANG_DIR if not set.
   103 // Define WP_LANG_DIR if not set.
   104 wp_set_lang_dir();
   104 wp_set_lang_dir();
   105 
   105 
   106 // Load early WordPress files.
   106 // Load early WordPress files.
   107 require( ABSPATH . WPINC . '/compat.php' );
   107 require ABSPATH . WPINC . '/compat.php';
   108 require( ABSPATH . WPINC . '/class-wp-list-util.php' );
   108 require ABSPATH . WPINC . '/class-wp-list-util.php';
   109 require( ABSPATH . WPINC . '/formatting.php' );
   109 require ABSPATH . WPINC . '/formatting.php';
   110 require( ABSPATH . WPINC . '/meta.php' );
   110 require ABSPATH . WPINC . '/meta.php';
   111 require( ABSPATH . WPINC . '/functions.php' );
   111 require ABSPATH . WPINC . '/functions.php';
   112 require( ABSPATH . WPINC . '/class-wp-meta-query.php' );
   112 require ABSPATH . WPINC . '/class-wp-meta-query.php';
   113 require( ABSPATH . WPINC . '/class-wp-matchesmapregex.php' );
   113 require ABSPATH . WPINC . '/class-wp-matchesmapregex.php';
   114 require( ABSPATH . WPINC . '/class-wp.php' );
   114 require ABSPATH . WPINC . '/class-wp.php';
   115 require( ABSPATH . WPINC . '/class-wp-error.php' );
   115 require ABSPATH . WPINC . '/class-wp-error.php';
   116 require( ABSPATH . WPINC . '/pomo/mo.php' );
   116 require ABSPATH . WPINC . '/pomo/mo.php';
   117 
   117 
       
   118 /**
       
   119  * @global wpdb $wpdb WordPress database abstraction object.
       
   120  * @since 0.71
       
   121  */
       
   122 global $wpdb;
   118 // Include the wpdb class and, if present, a db.php database drop-in.
   123 // Include the wpdb class and, if present, a db.php database drop-in.
   119 global $wpdb;
       
   120 require_wp_db();
   124 require_wp_db();
   121 
   125 
   122 // Set the database table prefix and the format specifiers for database table columns.
   126 // Set the database table prefix and the format specifiers for database table columns.
   123 $GLOBALS['table_prefix'] = $table_prefix;
   127 $GLOBALS['table_prefix'] = $table_prefix;
   124 wp_set_wpdb_vars();
   128 wp_set_wpdb_vars();
   125 
   129 
   126 // Start the WordPress object cache, or an external object cache if the drop-in is present.
   130 // Start the WordPress object cache, or an external object cache if the drop-in is present.
   127 wp_start_object_cache();
   131 wp_start_object_cache();
   128 
   132 
   129 // Attach the default filters.
   133 // Attach the default filters.
   130 require( ABSPATH . WPINC . '/default-filters.php' );
   134 require ABSPATH . WPINC . '/default-filters.php';
   131 
   135 
   132 // Initialize multisite if enabled.
   136 // Initialize multisite if enabled.
   133 if ( is_multisite() ) {
   137 if ( is_multisite() ) {
   134 	require( ABSPATH . WPINC . '/class-wp-site-query.php' );
   138 	require ABSPATH . WPINC . '/class-wp-site-query.php';
   135 	require( ABSPATH . WPINC . '/class-wp-network-query.php' );
   139 	require ABSPATH . WPINC . '/class-wp-network-query.php';
   136 	require( ABSPATH . WPINC . '/ms-blogs.php' );
   140 	require ABSPATH . WPINC . '/ms-blogs.php';
   137 	require( ABSPATH . WPINC . '/ms-settings.php' );
   141 	require ABSPATH . WPINC . '/ms-settings.php';
   138 } elseif ( ! defined( 'MULTISITE' ) ) {
   142 } elseif ( ! defined( 'MULTISITE' ) ) {
   139 	define( 'MULTISITE', false );
   143 	define( 'MULTISITE', false );
   140 }
   144 }
   141 
   145 
   142 register_shutdown_function( 'shutdown_action_hook' );
   146 register_shutdown_function( 'shutdown_action_hook' );
   145 if ( SHORTINIT ) {
   149 if ( SHORTINIT ) {
   146 	return false;
   150 	return false;
   147 }
   151 }
   148 
   152 
   149 // Load the L10n library.
   153 // Load the L10n library.
   150 require_once( ABSPATH . WPINC . '/l10n.php' );
   154 require_once ABSPATH . WPINC . '/l10n.php';
   151 require_once( ABSPATH . WPINC . '/class-wp-locale.php' );
   155 require_once ABSPATH . WPINC . '/class-wp-locale.php';
   152 require_once( ABSPATH . WPINC . '/class-wp-locale-switcher.php' );
   156 require_once ABSPATH . WPINC . '/class-wp-locale-switcher.php';
   153 
   157 
   154 // Run the installer if WordPress is not installed.
   158 // Run the installer if WordPress is not installed.
   155 wp_not_installed();
   159 wp_not_installed();
   156 
   160 
   157 // Load most of WordPress.
   161 // Load most of WordPress.
   158 require( ABSPATH . WPINC . '/class-wp-walker.php' );
   162 require ABSPATH . WPINC . '/class-wp-walker.php';
   159 require( ABSPATH . WPINC . '/class-wp-ajax-response.php' );
   163 require ABSPATH . WPINC . '/class-wp-ajax-response.php';
   160 require( ABSPATH . WPINC . '/capabilities.php' );
   164 require ABSPATH . WPINC . '/capabilities.php';
   161 require( ABSPATH . WPINC . '/class-wp-roles.php' );
   165 require ABSPATH . WPINC . '/class-wp-roles.php';
   162 require( ABSPATH . WPINC . '/class-wp-role.php' );
   166 require ABSPATH . WPINC . '/class-wp-role.php';
   163 require( ABSPATH . WPINC . '/class-wp-user.php' );
   167 require ABSPATH . WPINC . '/class-wp-user.php';
   164 require( ABSPATH . WPINC . '/class-wp-query.php' );
   168 require ABSPATH . WPINC . '/class-wp-query.php';
   165 require( ABSPATH . WPINC . '/query.php' );
   169 require ABSPATH . WPINC . '/query.php';
   166 require( ABSPATH . WPINC . '/date.php' );
   170 require ABSPATH . WPINC . '/class-wp-date-query.php';
   167 require( ABSPATH . WPINC . '/theme.php' );
   171 require ABSPATH . WPINC . '/theme.php';
   168 require( ABSPATH . WPINC . '/class-wp-theme.php' );
   172 require ABSPATH . WPINC . '/class-wp-theme.php';
   169 require( ABSPATH . WPINC . '/template.php' );
   173 require ABSPATH . WPINC . '/template.php';
   170 require( ABSPATH . WPINC . '/user.php' );
   174 require ABSPATH . WPINC . '/class-wp-user-request.php';
   171 require( ABSPATH . WPINC . '/class-wp-user-query.php' );
   175 require ABSPATH . WPINC . '/user.php';
   172 require( ABSPATH . WPINC . '/class-wp-session-tokens.php' );
   176 require ABSPATH . WPINC . '/class-wp-user-query.php';
   173 require( ABSPATH . WPINC . '/class-wp-user-meta-session-tokens.php' );
   177 require ABSPATH . WPINC . '/class-wp-session-tokens.php';
   174 require( ABSPATH . WPINC . '/class-wp-metadata-lazyloader.php' );
   178 require ABSPATH . WPINC . '/class-wp-user-meta-session-tokens.php';
   175 require( ABSPATH . WPINC . '/general-template.php' );
   179 require ABSPATH . WPINC . '/class-wp-metadata-lazyloader.php';
   176 require( ABSPATH . WPINC . '/link-template.php' );
   180 require ABSPATH . WPINC . '/general-template.php';
   177 require( ABSPATH . WPINC . '/author-template.php' );
   181 require ABSPATH . WPINC . '/link-template.php';
   178 require( ABSPATH . WPINC . '/post.php' );
   182 require ABSPATH . WPINC . '/author-template.php';
   179 require( ABSPATH . WPINC . '/class-walker-page.php' );
   183 require ABSPATH . WPINC . '/post.php';
   180 require( ABSPATH . WPINC . '/class-walker-page-dropdown.php' );
   184 require ABSPATH . WPINC . '/class-walker-page.php';
   181 require( ABSPATH . WPINC . '/class-wp-post-type.php' );
   185 require ABSPATH . WPINC . '/class-walker-page-dropdown.php';
   182 require( ABSPATH . WPINC . '/class-wp-post.php' );
   186 require ABSPATH . WPINC . '/class-wp-post-type.php';
   183 require( ABSPATH . WPINC . '/post-template.php' );
   187 require ABSPATH . WPINC . '/class-wp-post.php';
   184 require( ABSPATH . WPINC . '/revision.php' );
   188 require ABSPATH . WPINC . '/post-template.php';
   185 require( ABSPATH . WPINC . '/post-formats.php' );
   189 require ABSPATH . WPINC . '/revision.php';
   186 require( ABSPATH . WPINC . '/post-thumbnail-template.php' );
   190 require ABSPATH . WPINC . '/post-formats.php';
   187 require( ABSPATH . WPINC . '/category.php' );
   191 require ABSPATH . WPINC . '/post-thumbnail-template.php';
   188 require( ABSPATH . WPINC . '/class-walker-category.php' );
   192 require ABSPATH . WPINC . '/category.php';
   189 require( ABSPATH . WPINC . '/class-walker-category-dropdown.php' );
   193 require ABSPATH . WPINC . '/class-walker-category.php';
   190 require( ABSPATH . WPINC . '/category-template.php' );
   194 require ABSPATH . WPINC . '/class-walker-category-dropdown.php';
   191 require( ABSPATH . WPINC . '/comment.php' );
   195 require ABSPATH . WPINC . '/category-template.php';
   192 require( ABSPATH . WPINC . '/class-wp-comment.php' );
   196 require ABSPATH . WPINC . '/comment.php';
   193 require( ABSPATH . WPINC . '/class-wp-comment-query.php' );
   197 require ABSPATH . WPINC . '/class-wp-comment.php';
   194 require( ABSPATH . WPINC . '/class-walker-comment.php' );
   198 require ABSPATH . WPINC . '/class-wp-comment-query.php';
   195 require( ABSPATH . WPINC . '/comment-template.php' );
   199 require ABSPATH . WPINC . '/class-walker-comment.php';
   196 require( ABSPATH . WPINC . '/rewrite.php' );
   200 require ABSPATH . WPINC . '/comment-template.php';
   197 require( ABSPATH . WPINC . '/class-wp-rewrite.php' );
   201 require ABSPATH . WPINC . '/rewrite.php';
   198 require( ABSPATH . WPINC . '/feed.php' );
   202 require ABSPATH . WPINC . '/class-wp-rewrite.php';
   199 require( ABSPATH . WPINC . '/bookmark.php' );
   203 require ABSPATH . WPINC . '/feed.php';
   200 require( ABSPATH . WPINC . '/bookmark-template.php' );
   204 require ABSPATH . WPINC . '/bookmark.php';
   201 require( ABSPATH . WPINC . '/kses.php' );
   205 require ABSPATH . WPINC . '/bookmark-template.php';
   202 require( ABSPATH . WPINC . '/cron.php' );
   206 require ABSPATH . WPINC . '/kses.php';
   203 require( ABSPATH . WPINC . '/deprecated.php' );
   207 require ABSPATH . WPINC . '/cron.php';
   204 require( ABSPATH . WPINC . '/script-loader.php' );
   208 require ABSPATH . WPINC . '/deprecated.php';
   205 require( ABSPATH . WPINC . '/taxonomy.php' );
   209 require ABSPATH . WPINC . '/script-loader.php';
   206 require( ABSPATH . WPINC . '/class-wp-taxonomy.php' );
   210 require ABSPATH . WPINC . '/taxonomy.php';
   207 require( ABSPATH . WPINC . '/class-wp-term.php' );
   211 require ABSPATH . WPINC . '/class-wp-taxonomy.php';
   208 require( ABSPATH . WPINC . '/class-wp-term-query.php' );
   212 require ABSPATH . WPINC . '/class-wp-term.php';
   209 require( ABSPATH . WPINC . '/class-wp-tax-query.php' );
   213 require ABSPATH . WPINC . '/class-wp-term-query.php';
   210 require( ABSPATH . WPINC . '/update.php' );
   214 require ABSPATH . WPINC . '/class-wp-tax-query.php';
   211 require( ABSPATH . WPINC . '/canonical.php' );
   215 require ABSPATH . WPINC . '/update.php';
   212 require( ABSPATH . WPINC . '/shortcodes.php' );
   216 require ABSPATH . WPINC . '/canonical.php';
   213 require( ABSPATH . WPINC . '/embed.php' );
   217 require ABSPATH . WPINC . '/shortcodes.php';
   214 require( ABSPATH . WPINC . '/class-wp-embed.php' );
   218 require ABSPATH . WPINC . '/embed.php';
   215 require( ABSPATH . WPINC . '/class-oembed.php' );
   219 require ABSPATH . WPINC . '/class-wp-embed.php';
   216 require( ABSPATH . WPINC . '/class-wp-oembed-controller.php' );
   220 require ABSPATH . WPINC . '/class-wp-oembed.php';
   217 require( ABSPATH . WPINC . '/media.php' );
   221 require ABSPATH . WPINC . '/class-wp-oembed-controller.php';
   218 require( ABSPATH . WPINC . '/http.php' );
   222 require ABSPATH . WPINC . '/media.php';
   219 require( ABSPATH . WPINC . '/class-http.php' );
   223 require ABSPATH . WPINC . '/http.php';
   220 require( ABSPATH . WPINC . '/class-wp-http-streams.php' );
   224 require ABSPATH . WPINC . '/class-http.php';
   221 require( ABSPATH . WPINC . '/class-wp-http-curl.php' );
   225 require ABSPATH . WPINC . '/class-wp-http-streams.php';
   222 require( ABSPATH . WPINC . '/class-wp-http-proxy.php' );
   226 require ABSPATH . WPINC . '/class-wp-http-curl.php';
   223 require( ABSPATH . WPINC . '/class-wp-http-cookie.php' );
   227 require ABSPATH . WPINC . '/class-wp-http-proxy.php';
   224 require( ABSPATH . WPINC . '/class-wp-http-encoding.php' );
   228 require ABSPATH . WPINC . '/class-wp-http-cookie.php';
   225 require( ABSPATH . WPINC . '/class-wp-http-response.php' );
   229 require ABSPATH . WPINC . '/class-wp-http-encoding.php';
   226 require( ABSPATH . WPINC . '/class-wp-http-requests-response.php' );
   230 require ABSPATH . WPINC . '/class-wp-http-response.php';
   227 require( ABSPATH . WPINC . '/class-wp-http-requests-hooks.php' );
   231 require ABSPATH . WPINC . '/class-wp-http-requests-response.php';
   228 require( ABSPATH . WPINC . '/widgets.php' );
   232 require ABSPATH . WPINC . '/class-wp-http-requests-hooks.php';
   229 require( ABSPATH . WPINC . '/class-wp-widget.php' );
   233 require ABSPATH . WPINC . '/widgets.php';
   230 require( ABSPATH . WPINC . '/class-wp-widget-factory.php' );
   234 require ABSPATH . WPINC . '/class-wp-widget.php';
   231 require( ABSPATH . WPINC . '/nav-menu.php' );
   235 require ABSPATH . WPINC . '/class-wp-widget-factory.php';
   232 require( ABSPATH . WPINC . '/nav-menu-template.php' );
   236 require ABSPATH . WPINC . '/nav-menu.php';
   233 require( ABSPATH . WPINC . '/admin-bar.php' );
   237 require ABSPATH . WPINC . '/nav-menu-template.php';
   234 require( ABSPATH . WPINC . '/rest-api.php' );
   238 require ABSPATH . WPINC . '/admin-bar.php';
   235 require( ABSPATH . WPINC . '/rest-api/class-wp-rest-server.php' );
   239 require ABSPATH . WPINC . '/rest-api.php';
   236 require( ABSPATH . WPINC . '/rest-api/class-wp-rest-response.php' );
   240 require ABSPATH . WPINC . '/rest-api/class-wp-rest-server.php';
   237 require( ABSPATH . WPINC . '/rest-api/class-wp-rest-request.php' );
   241 require ABSPATH . WPINC . '/rest-api/class-wp-rest-response.php';
   238 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-controller.php' );
   242 require ABSPATH . WPINC . '/rest-api/class-wp-rest-request.php';
   239 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-posts-controller.php' );
   243 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-controller.php';
   240 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-attachments-controller.php' );
   244 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-posts-controller.php';
   241 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-types-controller.php' );
   245 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-attachments-controller.php';
   242 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-statuses-controller.php' );
   246 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-types-controller.php';
   243 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-revisions-controller.php' );
   247 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-statuses-controller.php';
   244 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-autosaves-controller.php' );
   248 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-revisions-controller.php';
   245 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-taxonomies-controller.php' );
   249 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-autosaves-controller.php';
   246 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-terms-controller.php' );
   250 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-taxonomies-controller.php';
   247 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-users-controller.php' );
   251 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-terms-controller.php';
   248 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-comments-controller.php' );
   252 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-users-controller.php';
   249 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-search-controller.php' );
   253 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-comments-controller.php';
   250 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-blocks-controller.php' );
   254 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-search-controller.php';
   251 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-block-renderer-controller.php' );
   255 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-blocks-controller.php';
   252 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-settings-controller.php' );
   256 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-block-types-controller.php';
   253 require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-themes-controller.php' );
   257 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-block-renderer-controller.php';
   254 require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-meta-fields.php' );
   258 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-settings-controller.php';
   255 require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-comment-meta-fields.php' );
   259 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-themes-controller.php';
   256 require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-post-meta-fields.php' );
   260 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-plugins-controller.php';
   257 require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-term-meta-fields.php' );
   261 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-block-directory-controller.php';
   258 require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-user-meta-fields.php' );
   262 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-meta-fields.php';
   259 require( ABSPATH . WPINC . '/rest-api/search/class-wp-rest-search-handler.php' );
   263 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-comment-meta-fields.php';
   260 require( ABSPATH . WPINC . '/rest-api/search/class-wp-rest-post-search-handler.php' );
   264 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-post-meta-fields.php';
   261 require( ABSPATH . WPINC . '/class-wp-block-type.php' );
   265 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-term-meta-fields.php';
   262 require( ABSPATH . WPINC . '/class-wp-block-type-registry.php' );
   266 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-user-meta-fields.php';
   263 require( ABSPATH . WPINC . '/class-wp-block-parser.php' );
   267 require ABSPATH . WPINC . '/rest-api/search/class-wp-rest-search-handler.php';
   264 require( ABSPATH . WPINC . '/blocks.php' );
   268 require ABSPATH . WPINC . '/rest-api/search/class-wp-rest-post-search-handler.php';
   265 require( ABSPATH . WPINC . '/blocks/archives.php' );
   269 require ABSPATH . WPINC . '/sitemaps.php';
   266 require( ABSPATH . WPINC . '/blocks/block.php' );
   270 require ABSPATH . WPINC . '/sitemaps/class-wp-sitemaps.php';
   267 require( ABSPATH . WPINC . '/blocks/calendar.php' );
   271 require ABSPATH . WPINC . '/sitemaps/class-wp-sitemaps-index.php';
   268 require( ABSPATH . WPINC . '/blocks/categories.php' );
   272 require ABSPATH . WPINC . '/sitemaps/class-wp-sitemaps-provider.php';
   269 require( ABSPATH . WPINC . '/blocks/latest-comments.php' );
   273 require ABSPATH . WPINC . '/sitemaps/class-wp-sitemaps-registry.php';
   270 require( ABSPATH . WPINC . '/blocks/latest-posts.php' );
   274 require ABSPATH . WPINC . '/sitemaps/class-wp-sitemaps-renderer.php';
   271 require( ABSPATH . WPINC . '/blocks/rss.php' );
   275 require ABSPATH . WPINC . '/sitemaps/class-wp-sitemaps-stylesheet.php';
   272 require( ABSPATH . WPINC . '/blocks/search.php' );
   276 require ABSPATH . WPINC . '/sitemaps/providers/class-wp-sitemaps-posts.php';
   273 require( ABSPATH . WPINC . '/blocks/shortcode.php' );
   277 require ABSPATH . WPINC . '/sitemaps/providers/class-wp-sitemaps-taxonomies.php';
   274 require( ABSPATH . WPINC . '/blocks/tag-cloud.php' );
   278 require ABSPATH . WPINC . '/sitemaps/providers/class-wp-sitemaps-users.php';
       
   279 require ABSPATH . WPINC . '/class-wp-block-type.php';
       
   280 require ABSPATH . WPINC . '/class-wp-block-pattern-categories-registry.php';
       
   281 require ABSPATH . WPINC . '/class-wp-block-patterns-registry.php';
       
   282 require ABSPATH . WPINC . '/class-wp-block-styles-registry.php';
       
   283 require ABSPATH . WPINC . '/class-wp-block-type-registry.php';
       
   284 require ABSPATH . WPINC . '/class-wp-block.php';
       
   285 require ABSPATH . WPINC . '/class-wp-block-list.php';
       
   286 require ABSPATH . WPINC . '/class-wp-block-parser.php';
       
   287 require ABSPATH . WPINC . '/blocks.php';
       
   288 require ABSPATH . WPINC . '/blocks/index.php';
       
   289 require ABSPATH . WPINC . '/block-patterns.php';
   275 
   290 
   276 $GLOBALS['wp_embed'] = new WP_Embed();
   291 $GLOBALS['wp_embed'] = new WP_Embed();
   277 
   292 
   278 // Load multisite-specific files.
   293 // Load multisite-specific files.
   279 if ( is_multisite() ) {
   294 if ( is_multisite() ) {
   280 	require( ABSPATH . WPINC . '/ms-functions.php' );
   295 	require ABSPATH . WPINC . '/ms-functions.php';
   281 	require( ABSPATH . WPINC . '/ms-default-filters.php' );
   296 	require ABSPATH . WPINC . '/ms-default-filters.php';
   282 	require( ABSPATH . WPINC . '/ms-deprecated.php' );
   297 	require ABSPATH . WPINC . '/ms-deprecated.php';
   283 }
   298 }
   284 
   299 
   285 // Define constants that rely on the API to obtain the default value.
   300 // Define constants that rely on the API to obtain the default value.
   286 // Define must-use plugin directory constants, which may be overridden in the sunrise.php drop-in.
   301 // Define must-use plugin directory constants, which may be overridden in the sunrise.php drop-in.
   287 wp_plugin_directory_constants();
   302 wp_plugin_directory_constants();
   288 
   303 
   289 $GLOBALS['wp_plugin_paths'] = array();
   304 $GLOBALS['wp_plugin_paths'] = array();
   290 
   305 
   291 // Load must-use plugins.
   306 // Load must-use plugins.
   292 foreach ( wp_get_mu_plugins() as $mu_plugin ) {
   307 foreach ( wp_get_mu_plugins() as $mu_plugin ) {
   293 	include_once( $mu_plugin );
   308 	include_once $mu_plugin;
   294 
   309 
   295 	/**
   310 	/**
   296 	 * Fires once a single must-use plugin has loaded.
   311 	 * Fires once a single must-use plugin has loaded.
   297 	 *
   312 	 *
   298 	 * @since 5.1.0
   313 	 * @since 5.1.0
   305 
   320 
   306 // Load network activated plugins.
   321 // Load network activated plugins.
   307 if ( is_multisite() ) {
   322 if ( is_multisite() ) {
   308 	foreach ( wp_get_active_network_plugins() as $network_plugin ) {
   323 	foreach ( wp_get_active_network_plugins() as $network_plugin ) {
   309 		wp_register_plugin_realpath( $network_plugin );
   324 		wp_register_plugin_realpath( $network_plugin );
   310 		include_once( $network_plugin );
   325 		include_once $network_plugin;
   311 
   326 
   312 		/**
   327 		/**
   313 		 * Fires once a single network-activated plugin has loaded.
   328 		 * Fires once a single network-activated plugin has loaded.
   314 		 *
   329 		 *
   315 		 * @since 5.1.0
   330 		 * @since 5.1.0
   333 }
   348 }
   334 
   349 
   335 // Define constants after multisite is loaded.
   350 // Define constants after multisite is loaded.
   336 wp_cookie_constants();
   351 wp_cookie_constants();
   337 
   352 
   338 // Define and enforce our SSL constants
   353 // Define and enforce our SSL constants.
   339 wp_ssl_constants();
   354 wp_ssl_constants();
   340 
   355 
   341 // Create common globals.
   356 // Create common globals.
   342 require( ABSPATH . WPINC . '/vars.php' );
   357 require ABSPATH . WPINC . '/vars.php';
   343 
   358 
   344 // Make taxonomies and posts available to plugins and themes.
   359 // Make taxonomies and posts available to plugins and themes.
   345 // @plugin authors: warning: these get registered again on the init hook.
   360 // @plugin authors: warning: these get registered again on the init hook.
   346 create_initial_taxonomies();
   361 create_initial_taxonomies();
   347 create_initial_post_types();
   362 create_initial_post_types();
   348 
   363 
   349 wp_start_scraping_edited_file_errors();
   364 wp_start_scraping_edited_file_errors();
   350 
   365 
   351 // Register the default theme directory root
   366 // Register the default theme directory root.
   352 register_theme_directory( get_theme_root() );
   367 register_theme_directory( get_theme_root() );
   353 
   368 
   354 if ( ! is_multisite() ) {
   369 if ( ! is_multisite() ) {
   355 	// Handle users requesting a recovery mode link and initiating recovery mode.
   370 	// Handle users requesting a recovery mode link and initiating recovery mode.
   356 	wp_recovery_mode()->initialize();
   371 	wp_recovery_mode()->initialize();
   357 }
   372 }
   358 
   373 
   359 // Load active plugins.
   374 // Load active plugins.
   360 foreach ( wp_get_active_and_valid_plugins() as $plugin ) {
   375 foreach ( wp_get_active_and_valid_plugins() as $plugin ) {
   361 	wp_register_plugin_realpath( $plugin );
   376 	wp_register_plugin_realpath( $plugin );
   362 	include_once( $plugin );
   377 	include_once $plugin;
   363 
   378 
   364 	/**
   379 	/**
   365 	 * Fires once a single activated plugin has loaded.
   380 	 * Fires once a single activated plugin has loaded.
   366 	 *
   381 	 *
   367 	 * @since 5.1.0
   382 	 * @since 5.1.0
   371 	do_action( 'plugin_loaded', $plugin );
   386 	do_action( 'plugin_loaded', $plugin );
   372 }
   387 }
   373 unset( $plugin );
   388 unset( $plugin );
   374 
   389 
   375 // Load pluggable functions.
   390 // Load pluggable functions.
   376 require( ABSPATH . WPINC . '/pluggable.php' );
   391 require ABSPATH . WPINC . '/pluggable.php';
   377 require( ABSPATH . WPINC . '/pluggable-deprecated.php' );
   392 require ABSPATH . WPINC . '/pluggable-deprecated.php';
   378 
   393 
   379 // Set internal encoding.
   394 // Set internal encoding.
   380 wp_set_internal_encoding();
   395 wp_set_internal_encoding();
   381 
   396 
   382 // Run wp_cache_postload() if object cache is enabled and the function exists.
   397 // Run wp_cache_postload() if object cache is enabled and the function exists.
   394 do_action( 'plugins_loaded' );
   409 do_action( 'plugins_loaded' );
   395 
   410 
   396 // Define constants which affect functionality if not already defined.
   411 // Define constants which affect functionality if not already defined.
   397 wp_functionality_constants();
   412 wp_functionality_constants();
   398 
   413 
   399 // Add magic quotes and set up $_REQUEST ( $_GET + $_POST )
   414 // Add magic quotes and set up $_REQUEST ( $_GET + $_POST ).
   400 wp_magic_quotes();
   415 wp_magic_quotes();
   401 
   416 
   402 /**
   417 /**
   403  * Fires when comment cookies are sanitized.
   418  * Fires when comment cookies are sanitized.
   404  *
   419  *
   407 do_action( 'sanitize_comment_cookies' );
   422 do_action( 'sanitize_comment_cookies' );
   408 
   423 
   409 /**
   424 /**
   410  * WordPress Query object
   425  * WordPress Query object
   411  *
   426  *
   412  * @global WP_Query $wp_the_query
   427  * @global WP_Query $wp_the_query WordPress Query object.
   413  * @since 2.0.0
   428  * @since 2.0.0
   414  */
   429  */
   415 $GLOBALS['wp_the_query'] = new WP_Query();
   430 $GLOBALS['wp_the_query'] = new WP_Query();
   416 
   431 
   417 /**
   432 /**
   418  * Holds the reference to @see $wp_the_query
   433  * Holds the reference to @see $wp_the_query
   419  * Use this global for WordPress queries
   434  * Use this global for WordPress queries
   420  *
   435  *
   421  * @global WP_Query $wp_query
   436  * @global WP_Query $wp_query WordPress Query object.
   422  * @since 1.5.0
   437  * @since 1.5.0
   423  */
   438  */
   424 $GLOBALS['wp_query'] = $GLOBALS['wp_the_query'];
   439 $GLOBALS['wp_query'] = $GLOBALS['wp_the_query'];
   425 
   440 
   426 /**
   441 /**
   427  * Holds the WordPress Rewrite object for creating pretty URLs
   442  * Holds the WordPress Rewrite object for creating pretty URLs
   428  *
   443  *
   429  * @global WP_Rewrite $wp_rewrite
   444  * @global WP_Rewrite $wp_rewrite WordPress rewrite component.
   430  * @since 1.5.0
   445  * @since 1.5.0
   431  */
   446  */
   432 $GLOBALS['wp_rewrite'] = new WP_Rewrite();
   447 $GLOBALS['wp_rewrite'] = new WP_Rewrite();
   433 
   448 
   434 /**
   449 /**
   435  * WordPress Object
   450  * WordPress Object
   436  *
   451  *
   437  * @global WP $wp
   452  * @global WP $wp Current WordPress environment instance.
   438  * @since 2.0.0
   453  * @since 2.0.0
   439  */
   454  */
   440 $GLOBALS['wp'] = new WP();
   455 $GLOBALS['wp'] = new WP();
   441 
   456 
   442 /**
   457 /**
   448 $GLOBALS['wp_widget_factory'] = new WP_Widget_Factory();
   463 $GLOBALS['wp_widget_factory'] = new WP_Widget_Factory();
   449 
   464 
   450 /**
   465 /**
   451  * WordPress User Roles
   466  * WordPress User Roles
   452  *
   467  *
   453  * @global WP_Roles $wp_roles
   468  * @global WP_Roles $wp_roles WordPress role management object.
   454  * @since 2.0.0
   469  * @since 2.0.0
   455  */
   470  */
   456 $GLOBALS['wp_roles'] = new WP_Roles();
   471 $GLOBALS['wp_roles'] = new WP_Roles();
   457 
   472 
   458 /**
   473 /**
   469 load_default_textdomain();
   484 load_default_textdomain();
   470 
   485 
   471 $locale      = get_locale();
   486 $locale      = get_locale();
   472 $locale_file = WP_LANG_DIR . "/$locale.php";
   487 $locale_file = WP_LANG_DIR . "/$locale.php";
   473 if ( ( 0 === validate_file( $locale ) ) && is_readable( $locale_file ) ) {
   488 if ( ( 0 === validate_file( $locale ) ) && is_readable( $locale_file ) ) {
   474 	require( $locale_file );
   489 	require $locale_file;
   475 }
   490 }
   476 unset( $locale_file );
   491 unset( $locale_file );
   477 
   492 
   478 /**
   493 /**
   479  * WordPress Locale object for loading locale domain date and various strings.
   494  * WordPress Locale object for loading locale domain date and various strings.
   480  *
   495  *
   481  * @global WP_Locale $wp_locale
   496  * @global WP_Locale $wp_locale WordPress date and time locale object.
   482  * @since 2.1.0
   497  * @since 2.1.0
   483  */
   498  */
   484 $GLOBALS['wp_locale'] = new WP_Locale();
   499 $GLOBALS['wp_locale'] = new WP_Locale();
   485 
   500 
   486 /**
   501 /**
   487  *  WordPress Locale Switcher object for switching locales.
   502  * WordPress Locale Switcher object for switching locales.
   488  *
   503  *
   489  * @since 4.7.0
   504  * @since 4.7.0
   490  *
   505  *
   491  * @global WP_Locale_Switcher $wp_locale_switcher WordPress locale switcher object.
   506  * @global WP_Locale_Switcher $wp_locale_switcher WordPress locale switcher object.
   492  */
   507  */
   506  *
   521  *
   507  * @since 3.0.0
   522  * @since 3.0.0
   508  */
   523  */
   509 do_action( 'after_setup_theme' );
   524 do_action( 'after_setup_theme' );
   510 
   525 
       
   526 // Create an instance of WP_Site_Health so that Cron events may fire.
       
   527 if ( ! class_exists( 'WP_Site_Health' ) ) {
       
   528 	require_once ABSPATH . 'wp-admin/includes/class-wp-site-health.php';
       
   529 }
       
   530 WP_Site_Health::get_instance();
       
   531 
   511 // Set up current user.
   532 // Set up current user.
   512 $GLOBALS['wp']->init();
   533 $GLOBALS['wp']->init();
   513 
   534 
   514 /**
   535 /**
   515  * Fires after WordPress has finished loading but before any headers are sent.
   536  * Fires after WordPress has finished loading but before any headers are sent.
   522  *
   543  *
   523  * @since 1.5.0
   544  * @since 1.5.0
   524  */
   545  */
   525 do_action( 'init' );
   546 do_action( 'init' );
   526 
   547 
   527 // Check site status
   548 // Check site status.
   528 if ( is_multisite() ) {
   549 if ( is_multisite() ) {
   529 	if ( true !== ( $file = ms_site_check() ) ) {
   550 	$file = ms_site_check();
   530 		require( $file );
   551 	if ( true !== $file ) {
       
   552 		require $file;
   531 		die();
   553 		die();
   532 	}
   554 	}
   533 	unset( $file );
   555 	unset( $file );
   534 }
   556 }
   535 
   557