wp/wp-settings.php
changeset 21 48c4eec2b7e6
parent 19 3d72ae0968f4
child 22 8c2e4d02f4ef
equal deleted inserted replaced
20:7b1b88e27a20 21:48c4eec2b7e6
    17 
    17 
    18 /**
    18 /**
    19  * Version information for the current WordPress release.
    19  * Version information for the current WordPress release.
    20  *
    20  *
    21  * These can't be directly globalized in version.php. When updating,
    21  * These can't be directly globalized in version.php. When updating,
    22  * we're including version.php from another installation and don't want
    22  * include version.php from another installation and don't override
    23  * these values to be overridden if already set.
    23  * these values if already set.
    24  *
    24  *
    25  * @global string $wp_version             The WordPress version string.
    25  * @global string $wp_version             The WordPress version string.
    26  * @global int    $wp_db_version          WordPress database version.
    26  * @global int    $wp_db_version          WordPress database version.
    27  * @global string $tinymce_version        TinyMCE version.
    27  * @global string $tinymce_version        TinyMCE version.
    28  * @global string $required_php_version   The required PHP version string.
    28  * @global string $required_php_version   The required PHP version string.
    29  * @global string $required_mysql_version The required MySQL version string.
    29  * @global string $required_mysql_version The required MySQL version string.
    30  * @global string $wp_local_package       Locale code of the package.
    30  * @global string $wp_local_package       Locale code of the package.
    31  */
    31  */
    32 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;
    33 require ABSPATH . WPINC . '/version.php';
    33 require ABSPATH . WPINC . '/version.php';
       
    34 require ABSPATH . WPINC . '/compat.php';
    34 require ABSPATH . WPINC . '/load.php';
    35 require ABSPATH . WPINC . '/load.php';
    35 
    36 
    36 // Check for the required PHP version and for the MySQL extension or a database drop-in.
    37 // Check for the required PHP version and for the MySQL extension or a database drop-in.
    37 wp_check_php_mysql_versions();
    38 wp_check_php_mysql_versions();
    38 
    39 
    50 
    51 
    51 /**
    52 /**
    52  * If not already configured, `$blog_id` will default to 1 in a single site
    53  * If not already configured, `$blog_id` will default to 1 in a single site
    53  * configuration. In multisite, it will be overridden by default in ms-settings.php.
    54  * configuration. In multisite, it will be overridden by default in ms-settings.php.
    54  *
    55  *
       
    56  * @since 2.0.0
       
    57  *
    55  * @global int $blog_id
    58  * @global int $blog_id
    56  * @since 2.0.0
       
    57  */
    59  */
    58 global $blog_id;
    60 global $blog_id;
    59 
    61 
    60 // Set initial default constants including WP_MEMORY_LIMIT, WP_MAX_MEMORY_LIMIT, WP_DEBUG, SCRIPT_DEBUG, WP_CONTENT_DIR and WP_CACHE.
    62 // Set initial default constants including WP_MEMORY_LIMIT, WP_MAX_MEMORY_LIMIT, WP_DEBUG, SCRIPT_DEBUG, WP_CONTENT_DIR and WP_CACHE.
    61 wp_initial_constants();
    63 wp_initial_constants();
    62 
    64 
    63 // Make sure we register the shutdown handler for fatal errors as soon as possible.
    65 // Register the shutdown handler for fatal errors as soon as possible.
    64 wp_register_fatal_error_handler();
    66 wp_register_fatal_error_handler();
    65 
    67 
    66 // WordPress calculates offsets from UTC.
    68 // WordPress calculates offsets from UTC.
    67 // phpcs:ignore WordPress.DateTime.RestrictedFunctions.timezone_change_date_default_timezone_set
    69 // phpcs:ignore WordPress.DateTime.RestrictedFunctions.timezone_change_date_default_timezone_set
    68 date_default_timezone_set( 'UTC' );
    70 date_default_timezone_set( 'UTC' );
    69 
    71 
    70 // Standardize $_SERVER variables across setups.
    72 // Standardize $_SERVER variables across setups.
    71 wp_fix_server_vars();
    73 wp_fix_server_vars();
    72 
    74 
    73 // Check if we're in maintenance mode.
    75 // Check if the site is in maintenance mode.
    74 wp_maintenance();
    76 wp_maintenance();
    75 
    77 
    76 // Start loading timer.
    78 // Start loading timer.
    77 timer_start();
    79 timer_start();
    78 
    80 
    79 // Check if we're in WP_DEBUG mode.
    81 // Check if WP_DEBUG mode is enabled.
    80 wp_debug_mode();
    82 wp_debug_mode();
    81 
    83 
    82 /**
    84 /**
    83  * Filters whether to enable loading of the advanced-cache.php drop-in.
    85  * Filters whether to enable loading of the advanced-cache.php drop-in.
    84  *
    86  *
   102 
   104 
   103 // Define WP_LANG_DIR if not set.
   105 // Define WP_LANG_DIR if not set.
   104 wp_set_lang_dir();
   106 wp_set_lang_dir();
   105 
   107 
   106 // Load early WordPress files.
   108 // Load early WordPress files.
   107 require ABSPATH . WPINC . '/compat.php';
       
   108 require ABSPATH . WPINC . '/class-wp-list-util.php';
   109 require ABSPATH . WPINC . '/class-wp-list-util.php';
       
   110 require ABSPATH . WPINC . '/class-wp-token-map.php';
   109 require ABSPATH . WPINC . '/formatting.php';
   111 require ABSPATH . WPINC . '/formatting.php';
   110 require ABSPATH . WPINC . '/meta.php';
   112 require ABSPATH . WPINC . '/meta.php';
   111 require ABSPATH . WPINC . '/functions.php';
   113 require ABSPATH . WPINC . '/functions.php';
   112 require ABSPATH . WPINC . '/class-wp-meta-query.php';
   114 require ABSPATH . WPINC . '/class-wp-meta-query.php';
   113 require ABSPATH . WPINC . '/class-wp-matchesmapregex.php';
   115 require ABSPATH . WPINC . '/class-wp-matchesmapregex.php';
   114 require ABSPATH . WPINC . '/class-wp.php';
   116 require ABSPATH . WPINC . '/class-wp.php';
   115 require ABSPATH . WPINC . '/class-wp-error.php';
   117 require ABSPATH . WPINC . '/class-wp-error.php';
   116 require ABSPATH . WPINC . '/pomo/mo.php';
   118 require ABSPATH . WPINC . '/pomo/mo.php';
   117 
   119 require ABSPATH . WPINC . '/l10n/class-wp-translation-controller.php';
   118 /**
   120 require ABSPATH . WPINC . '/l10n/class-wp-translations.php';
       
   121 require ABSPATH . WPINC . '/l10n/class-wp-translation-file.php';
       
   122 require ABSPATH . WPINC . '/l10n/class-wp-translation-file-mo.php';
       
   123 require ABSPATH . WPINC . '/l10n/class-wp-translation-file-php.php';
       
   124 
       
   125 /**
       
   126  * @since 0.71
       
   127  *
   119  * @global wpdb $wpdb WordPress database abstraction object.
   128  * @global wpdb $wpdb WordPress database abstraction object.
   120  * @since 0.71
       
   121  */
   129  */
   122 global $wpdb;
   130 global $wpdb;
   123 // Include the wpdb class and, if present, a db.php database drop-in.
   131 // Include the wpdb class and, if present, a db.php database drop-in.
   124 require_wp_db();
   132 require_wp_db();
   125 
   133 
       
   134 /**
       
   135  * @since 3.3.0
       
   136  *
       
   137  * @global string $table_prefix The database table prefix.
       
   138  */
       
   139 $GLOBALS['table_prefix'] = $table_prefix;
       
   140 
   126 // Set the database table prefix and the format specifiers for database table columns.
   141 // Set the database table prefix and the format specifiers for database table columns.
   127 $GLOBALS['table_prefix'] = $table_prefix;
       
   128 wp_set_wpdb_vars();
   142 wp_set_wpdb_vars();
   129 
   143 
   130 // Start the WordPress object cache, or an external object cache if the drop-in is present.
   144 // Start the WordPress object cache, or an external object cache if the drop-in is present.
   131 wp_start_object_cache();
   145 wp_start_object_cache();
   132 
   146 
   143 	define( 'MULTISITE', false );
   157 	define( 'MULTISITE', false );
   144 }
   158 }
   145 
   159 
   146 register_shutdown_function( 'shutdown_action_hook' );
   160 register_shutdown_function( 'shutdown_action_hook' );
   147 
   161 
   148 // Stop most of WordPress from being loaded if we just want the basics.
   162 // Stop most of WordPress from being loaded if SHORTINIT is enabled.
   149 if ( SHORTINIT ) {
   163 if ( SHORTINIT ) {
   150 	return false;
   164 	return false;
   151 }
   165 }
   152 
   166 
   153 // Load the L10n library.
   167 // Load the L10n library.
   154 require_once ABSPATH . WPINC . '/l10n.php';
   168 require_once ABSPATH . WPINC . '/l10n.php';
       
   169 require_once ABSPATH . WPINC . '/class-wp-textdomain-registry.php';
   155 require_once ABSPATH . WPINC . '/class-wp-locale.php';
   170 require_once ABSPATH . WPINC . '/class-wp-locale.php';
   156 require_once ABSPATH . WPINC . '/class-wp-locale-switcher.php';
   171 require_once ABSPATH . WPINC . '/class-wp-locale-switcher.php';
   157 
   172 
   158 // Run the installer if WordPress is not installed.
   173 // Run the installer if WordPress is not installed.
   159 wp_not_installed();
   174 wp_not_installed();
   169 require ABSPATH . WPINC . '/query.php';
   184 require ABSPATH . WPINC . '/query.php';
   170 require ABSPATH . WPINC . '/class-wp-date-query.php';
   185 require ABSPATH . WPINC . '/class-wp-date-query.php';
   171 require ABSPATH . WPINC . '/theme.php';
   186 require ABSPATH . WPINC . '/theme.php';
   172 require ABSPATH . WPINC . '/class-wp-theme.php';
   187 require ABSPATH . WPINC . '/class-wp-theme.php';
   173 require ABSPATH . WPINC . '/class-wp-theme-json-schema.php';
   188 require ABSPATH . WPINC . '/class-wp-theme-json-schema.php';
       
   189 require ABSPATH . WPINC . '/class-wp-theme-json-data.php';
   174 require ABSPATH . WPINC . '/class-wp-theme-json.php';
   190 require ABSPATH . WPINC . '/class-wp-theme-json.php';
   175 require ABSPATH . WPINC . '/class-wp-theme-json-resolver.php';
   191 require ABSPATH . WPINC . '/class-wp-theme-json-resolver.php';
       
   192 require ABSPATH . WPINC . '/class-wp-duotone.php';
   176 require ABSPATH . WPINC . '/global-styles-and-settings.php';
   193 require ABSPATH . WPINC . '/global-styles-and-settings.php';
   177 require ABSPATH . WPINC . '/class-wp-block-template.php';
   194 require ABSPATH . WPINC . '/class-wp-block-template.php';
   178 require ABSPATH . WPINC . '/block-template-utils.php';
   195 require ABSPATH . WPINC . '/block-template-utils.php';
   179 require ABSPATH . WPINC . '/block-template.php';
   196 require ABSPATH . WPINC . '/block-template.php';
   180 require ABSPATH . WPINC . '/theme-templates.php';
   197 require ABSPATH . WPINC . '/theme-templates.php';
       
   198 require ABSPATH . WPINC . '/theme-previews.php';
   181 require ABSPATH . WPINC . '/template.php';
   199 require ABSPATH . WPINC . '/template.php';
   182 require ABSPATH . WPINC . '/https-detection.php';
   200 require ABSPATH . WPINC . '/https-detection.php';
   183 require ABSPATH . WPINC . '/https-migration.php';
   201 require ABSPATH . WPINC . '/https-migration.php';
   184 require ABSPATH . WPINC . '/class-wp-user-request.php';
   202 require ABSPATH . WPINC . '/class-wp-user-request.php';
   185 require ABSPATH . WPINC . '/user.php';
   203 require ABSPATH . WPINC . '/user.php';
   186 require ABSPATH . WPINC . '/class-wp-user-query.php';
   204 require ABSPATH . WPINC . '/class-wp-user-query.php';
   187 require ABSPATH . WPINC . '/class-wp-session-tokens.php';
   205 require ABSPATH . WPINC . '/class-wp-session-tokens.php';
   188 require ABSPATH . WPINC . '/class-wp-user-meta-session-tokens.php';
   206 require ABSPATH . WPINC . '/class-wp-user-meta-session-tokens.php';
   189 require ABSPATH . WPINC . '/class-wp-metadata-lazyloader.php';
       
   190 require ABSPATH . WPINC . '/general-template.php';
   207 require ABSPATH . WPINC . '/general-template.php';
   191 require ABSPATH . WPINC . '/link-template.php';
   208 require ABSPATH . WPINC . '/link-template.php';
   192 require ABSPATH . WPINC . '/author-template.php';
   209 require ABSPATH . WPINC . '/author-template.php';
   193 require ABSPATH . WPINC . '/robots-template.php';
   210 require ABSPATH . WPINC . '/robots-template.php';
   194 require ABSPATH . WPINC . '/post.php';
   211 require ABSPATH . WPINC . '/post.php';
   230 require ABSPATH . WPINC . '/class-wp-embed.php';
   247 require ABSPATH . WPINC . '/class-wp-embed.php';
   231 require ABSPATH . WPINC . '/class-wp-oembed.php';
   248 require ABSPATH . WPINC . '/class-wp-oembed.php';
   232 require ABSPATH . WPINC . '/class-wp-oembed-controller.php';
   249 require ABSPATH . WPINC . '/class-wp-oembed-controller.php';
   233 require ABSPATH . WPINC . '/media.php';
   250 require ABSPATH . WPINC . '/media.php';
   234 require ABSPATH . WPINC . '/http.php';
   251 require ABSPATH . WPINC . '/http.php';
       
   252 require ABSPATH . WPINC . '/html-api/html5-named-character-references.php';
       
   253 require ABSPATH . WPINC . '/html-api/class-wp-html-attribute-token.php';
       
   254 require ABSPATH . WPINC . '/html-api/class-wp-html-span.php';
       
   255 require ABSPATH . WPINC . '/html-api/class-wp-html-text-replacement.php';
       
   256 require ABSPATH . WPINC . '/html-api/class-wp-html-decoder.php';
       
   257 require ABSPATH . WPINC . '/html-api/class-wp-html-tag-processor.php';
       
   258 require ABSPATH . WPINC . '/html-api/class-wp-html-unsupported-exception.php';
       
   259 require ABSPATH . WPINC . '/html-api/class-wp-html-active-formatting-elements.php';
       
   260 require ABSPATH . WPINC . '/html-api/class-wp-html-open-elements.php';
       
   261 require ABSPATH . WPINC . '/html-api/class-wp-html-token.php';
       
   262 require ABSPATH . WPINC . '/html-api/class-wp-html-stack-event.php';
       
   263 require ABSPATH . WPINC . '/html-api/class-wp-html-processor-state.php';
       
   264 require ABSPATH . WPINC . '/html-api/class-wp-html-processor.php';
   235 require ABSPATH . WPINC . '/class-wp-http.php';
   265 require ABSPATH . WPINC . '/class-wp-http.php';
   236 require ABSPATH . WPINC . '/class-wp-http-streams.php';
   266 require ABSPATH . WPINC . '/class-wp-http-streams.php';
   237 require ABSPATH . WPINC . '/class-wp-http-curl.php';
   267 require ABSPATH . WPINC . '/class-wp-http-curl.php';
   238 require ABSPATH . WPINC . '/class-wp-http-proxy.php';
   268 require ABSPATH . WPINC . '/class-wp-http-proxy.php';
   239 require ABSPATH . WPINC . '/class-wp-http-cookie.php';
   269 require ABSPATH . WPINC . '/class-wp-http-cookie.php';
   257 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-attachments-controller.php';
   287 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-attachments-controller.php';
   258 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-global-styles-controller.php';
   288 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-global-styles-controller.php';
   259 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-types-controller.php';
   289 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-types-controller.php';
   260 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-statuses-controller.php';
   290 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-statuses-controller.php';
   261 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-revisions-controller.php';
   291 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-revisions-controller.php';
       
   292 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-global-styles-revisions-controller.php';
       
   293 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-template-revisions-controller.php';
   262 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-autosaves-controller.php';
   294 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-autosaves-controller.php';
       
   295 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-template-autosaves-controller.php';
   263 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-taxonomies-controller.php';
   296 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-taxonomies-controller.php';
   264 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-terms-controller.php';
   297 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-terms-controller.php';
   265 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-menu-items-controller.php';
   298 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-menu-items-controller.php';
   266 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-menus-controller.php';
   299 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-menus-controller.php';
   267 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-menu-locations-controller.php';
   300 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-menu-locations-controller.php';
   284 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-sidebars-controller.php';
   317 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-sidebars-controller.php';
   285 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-widget-types-controller.php';
   318 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-widget-types-controller.php';
   286 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-widgets-controller.php';
   319 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-widgets-controller.php';
   287 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-templates-controller.php';
   320 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-templates-controller.php';
   288 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-url-details-controller.php';
   321 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-url-details-controller.php';
       
   322 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-navigation-fallback-controller.php';
       
   323 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-font-families-controller.php';
       
   324 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-font-faces-controller.php';
       
   325 require ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-font-collections-controller.php';
   289 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-meta-fields.php';
   326 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-meta-fields.php';
   290 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-comment-meta-fields.php';
   327 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-comment-meta-fields.php';
   291 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-post-meta-fields.php';
   328 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-post-meta-fields.php';
   292 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-term-meta-fields.php';
   329 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-term-meta-fields.php';
   293 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-user-meta-fields.php';
   330 require ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-user-meta-fields.php';
   303 require ABSPATH . WPINC . '/sitemaps/class-wp-sitemaps-renderer.php';
   340 require ABSPATH . WPINC . '/sitemaps/class-wp-sitemaps-renderer.php';
   304 require ABSPATH . WPINC . '/sitemaps/class-wp-sitemaps-stylesheet.php';
   341 require ABSPATH . WPINC . '/sitemaps/class-wp-sitemaps-stylesheet.php';
   305 require ABSPATH . WPINC . '/sitemaps/providers/class-wp-sitemaps-posts.php';
   342 require ABSPATH . WPINC . '/sitemaps/providers/class-wp-sitemaps-posts.php';
   306 require ABSPATH . WPINC . '/sitemaps/providers/class-wp-sitemaps-taxonomies.php';
   343 require ABSPATH . WPINC . '/sitemaps/providers/class-wp-sitemaps-taxonomies.php';
   307 require ABSPATH . WPINC . '/sitemaps/providers/class-wp-sitemaps-users.php';
   344 require ABSPATH . WPINC . '/sitemaps/providers/class-wp-sitemaps-users.php';
       
   345 require ABSPATH . WPINC . '/class-wp-block-bindings-source.php';
       
   346 require ABSPATH . WPINC . '/class-wp-block-bindings-registry.php';
   308 require ABSPATH . WPINC . '/class-wp-block-editor-context.php';
   347 require ABSPATH . WPINC . '/class-wp-block-editor-context.php';
   309 require ABSPATH . WPINC . '/class-wp-block-type.php';
   348 require ABSPATH . WPINC . '/class-wp-block-type.php';
   310 require ABSPATH . WPINC . '/class-wp-block-pattern-categories-registry.php';
   349 require ABSPATH . WPINC . '/class-wp-block-pattern-categories-registry.php';
   311 require ABSPATH . WPINC . '/class-wp-block-patterns-registry.php';
   350 require ABSPATH . WPINC . '/class-wp-block-patterns-registry.php';
   312 require ABSPATH . WPINC . '/class-wp-block-styles-registry.php';
   351 require ABSPATH . WPINC . '/class-wp-block-styles-registry.php';
   313 require ABSPATH . WPINC . '/class-wp-block-type-registry.php';
   352 require ABSPATH . WPINC . '/class-wp-block-type-registry.php';
   314 require ABSPATH . WPINC . '/class-wp-block.php';
   353 require ABSPATH . WPINC . '/class-wp-block.php';
   315 require ABSPATH . WPINC . '/class-wp-block-list.php';
   354 require ABSPATH . WPINC . '/class-wp-block-list.php';
       
   355 require ABSPATH . WPINC . '/class-wp-block-parser-block.php';
       
   356 require ABSPATH . WPINC . '/class-wp-block-parser-frame.php';
   316 require ABSPATH . WPINC . '/class-wp-block-parser.php';
   357 require ABSPATH . WPINC . '/class-wp-block-parser.php';
       
   358 require ABSPATH . WPINC . '/class-wp-classic-to-block-menu-converter.php';
       
   359 require ABSPATH . WPINC . '/class-wp-navigation-fallback.php';
       
   360 require ABSPATH . WPINC . '/block-bindings.php';
       
   361 require ABSPATH . WPINC . '/block-bindings/pattern-overrides.php';
       
   362 require ABSPATH . WPINC . '/block-bindings/post-meta.php';
   317 require ABSPATH . WPINC . '/blocks.php';
   363 require ABSPATH . WPINC . '/blocks.php';
   318 require ABSPATH . WPINC . '/blocks/index.php';
   364 require ABSPATH . WPINC . '/blocks/index.php';
   319 require ABSPATH . WPINC . '/block-editor.php';
   365 require ABSPATH . WPINC . '/block-editor.php';
   320 require ABSPATH . WPINC . '/block-patterns.php';
   366 require ABSPATH . WPINC . '/block-patterns.php';
   321 require ABSPATH . WPINC . '/class-wp-block-supports.php';
   367 require ABSPATH . WPINC . '/class-wp-block-supports.php';
   322 require ABSPATH . WPINC . '/block-supports/utils.php';
   368 require ABSPATH . WPINC . '/block-supports/utils.php';
   323 require ABSPATH . WPINC . '/block-supports/align.php';
   369 require ABSPATH . WPINC . '/block-supports/align.php';
       
   370 require ABSPATH . WPINC . '/block-supports/custom-classname.php';
       
   371 require ABSPATH . WPINC . '/block-supports/generated-classname.php';
       
   372 require ABSPATH . WPINC . '/block-supports/settings.php';
       
   373 require ABSPATH . WPINC . '/block-supports/elements.php';
       
   374 require ABSPATH . WPINC . '/block-supports/colors.php';
       
   375 require ABSPATH . WPINC . '/block-supports/typography.php';
   324 require ABSPATH . WPINC . '/block-supports/border.php';
   376 require ABSPATH . WPINC . '/block-supports/border.php';
   325 require ABSPATH . WPINC . '/block-supports/colors.php';
   377 require ABSPATH . WPINC . '/block-supports/layout.php';
   326 require ABSPATH . WPINC . '/block-supports/custom-classname.php';
   378 require ABSPATH . WPINC . '/block-supports/position.php';
       
   379 require ABSPATH . WPINC . '/block-supports/spacing.php';
   327 require ABSPATH . WPINC . '/block-supports/dimensions.php';
   380 require ABSPATH . WPINC . '/block-supports/dimensions.php';
   328 require ABSPATH . WPINC . '/block-supports/duotone.php';
   381 require ABSPATH . WPINC . '/block-supports/duotone.php';
   329 require ABSPATH . WPINC . '/block-supports/elements.php';
   382 require ABSPATH . WPINC . '/block-supports/shadow.php';
   330 require ABSPATH . WPINC . '/block-supports/generated-classname.php';
   383 require ABSPATH . WPINC . '/block-supports/background.php';
   331 require ABSPATH . WPINC . '/block-supports/layout.php';
   384 require ABSPATH . WPINC . '/block-supports/block-style-variations.php';
   332 require ABSPATH . WPINC . '/block-supports/spacing.php';
   385 require ABSPATH . WPINC . '/style-engine.php';
   333 require ABSPATH . WPINC . '/block-supports/typography.php';
   386 require ABSPATH . WPINC . '/style-engine/class-wp-style-engine.php';
   334 
   387 require ABSPATH . WPINC . '/style-engine/class-wp-style-engine-css-declarations.php';
       
   388 require ABSPATH . WPINC . '/style-engine/class-wp-style-engine-css-rule.php';
       
   389 require ABSPATH . WPINC . '/style-engine/class-wp-style-engine-css-rules-store.php';
       
   390 require ABSPATH . WPINC . '/style-engine/class-wp-style-engine-processor.php';
       
   391 require ABSPATH . WPINC . '/fonts/class-wp-font-face-resolver.php';
       
   392 require ABSPATH . WPINC . '/fonts/class-wp-font-collection.php';
       
   393 require ABSPATH . WPINC . '/fonts/class-wp-font-face.php';
       
   394 require ABSPATH . WPINC . '/fonts/class-wp-font-library.php';
       
   395 require ABSPATH . WPINC . '/fonts/class-wp-font-utils.php';
       
   396 require ABSPATH . WPINC . '/fonts.php';
       
   397 require ABSPATH . WPINC . '/class-wp-script-modules.php';
       
   398 require ABSPATH . WPINC . '/script-modules.php';
       
   399 require ABSPATH . WPINC . '/interactivity-api/class-wp-interactivity-api.php';
       
   400 require ABSPATH . WPINC . '/interactivity-api/class-wp-interactivity-api-directives-processor.php';
       
   401 require ABSPATH . WPINC . '/interactivity-api/interactivity-api.php';
       
   402 require ABSPATH . WPINC . '/class-wp-plugin-dependencies.php';
       
   403 
       
   404 add_action( 'after_setup_theme', array( wp_script_modules(), 'add_hooks' ) );
       
   405 add_action( 'after_setup_theme', array( wp_interactivity(), 'add_hooks' ) );
       
   406 
       
   407 /**
       
   408  * @since 3.3.0
       
   409  *
       
   410  * @global WP_Embed $wp_embed WordPress Embed object.
       
   411  */
   335 $GLOBALS['wp_embed'] = new WP_Embed();
   412 $GLOBALS['wp_embed'] = new WP_Embed();
       
   413 
       
   414 /**
       
   415  * WordPress Textdomain Registry object.
       
   416  *
       
   417  * Used to support just-in-time translations for manually loaded text domains.
       
   418  *
       
   419  * @since 6.1.0
       
   420  *
       
   421  * @global WP_Textdomain_Registry $wp_textdomain_registry WordPress Textdomain Registry.
       
   422  */
       
   423 $GLOBALS['wp_textdomain_registry'] = new WP_Textdomain_Registry();
       
   424 $GLOBALS['wp_textdomain_registry']->init();
   336 
   425 
   337 // Load multisite-specific files.
   426 // Load multisite-specific files.
   338 if ( is_multisite() ) {
   427 if ( is_multisite() ) {
   339 	require ABSPATH . WPINC . '/ms-functions.php';
   428 	require ABSPATH . WPINC . '/ms-functions.php';
   340 	require ABSPATH . WPINC . '/ms-default-filters.php';
   429 	require ABSPATH . WPINC . '/ms-default-filters.php';
   343 
   432 
   344 // Define constants that rely on the API to obtain the default value.
   433 // Define constants that rely on the API to obtain the default value.
   345 // Define must-use plugin directory constants, which may be overridden in the sunrise.php drop-in.
   434 // Define must-use plugin directory constants, which may be overridden in the sunrise.php drop-in.
   346 wp_plugin_directory_constants();
   435 wp_plugin_directory_constants();
   347 
   436 
       
   437 /**
       
   438  * @since 3.9.0
       
   439  *
       
   440  * @global array $wp_plugin_paths
       
   441  */
   348 $GLOBALS['wp_plugin_paths'] = array();
   442 $GLOBALS['wp_plugin_paths'] = array();
   349 
   443 
   350 // Load must-use plugins.
   444 // Load must-use plugins.
   351 foreach ( wp_get_mu_plugins() as $mu_plugin ) {
   445 foreach ( wp_get_mu_plugins() as $mu_plugin ) {
   352 	$_wp_plugin_file = $mu_plugin;
   446 	$_wp_plugin_file = $mu_plugin;
   413 wp_start_scraping_edited_file_errors();
   507 wp_start_scraping_edited_file_errors();
   414 
   508 
   415 // Register the default theme directory root.
   509 // Register the default theme directory root.
   416 register_theme_directory( get_theme_root() );
   510 register_theme_directory( get_theme_root() );
   417 
   511 
   418 if ( ! is_multisite() ) {
   512 if ( ! is_multisite() && wp_is_fatal_error_handler_enabled() ) {
   419 	// Handle users requesting a recovery mode link and initiating recovery mode.
   513 	// Handle users requesting a recovery mode link and initiating recovery mode.
   420 	wp_recovery_mode()->initialize();
   514 	wp_recovery_mode()->initialize();
   421 }
   515 }
   422 
   516 
   423 // Load active plugins.
   517 // Load active plugins.
   474 do_action( 'sanitize_comment_cookies' );
   568 do_action( 'sanitize_comment_cookies' );
   475 
   569 
   476 /**
   570 /**
   477  * WordPress Query object
   571  * WordPress Query object
   478  *
   572  *
       
   573  * @since 2.0.0
       
   574  *
   479  * @global WP_Query $wp_the_query WordPress Query object.
   575  * @global WP_Query $wp_the_query WordPress Query object.
       
   576  */
       
   577 $GLOBALS['wp_the_query'] = new WP_Query();
       
   578 
       
   579 /**
       
   580  * Holds the reference to {@see $wp_the_query}.
       
   581  * Use this global for WordPress queries
       
   582  *
       
   583  * @since 1.5.0
       
   584  *
       
   585  * @global WP_Query $wp_query WordPress Query object.
       
   586  */
       
   587 $GLOBALS['wp_query'] = $GLOBALS['wp_the_query'];
       
   588 
       
   589 /**
       
   590  * Holds the WordPress Rewrite object for creating pretty URLs
       
   591  *
       
   592  * @since 1.5.0
       
   593  *
       
   594  * @global WP_Rewrite $wp_rewrite WordPress rewrite component.
       
   595  */
       
   596 $GLOBALS['wp_rewrite'] = new WP_Rewrite();
       
   597 
       
   598 /**
       
   599  * WordPress Object
       
   600  *
   480  * @since 2.0.0
   601  * @since 2.0.0
   481  */
       
   482 $GLOBALS['wp_the_query'] = new WP_Query();
       
   483 
       
   484 /**
       
   485  * Holds the reference to @see $wp_the_query
       
   486  * Use this global for WordPress queries
       
   487  *
       
   488  * @global WP_Query $wp_query WordPress Query object.
       
   489  * @since 1.5.0
       
   490  */
       
   491 $GLOBALS['wp_query'] = $GLOBALS['wp_the_query'];
       
   492 
       
   493 /**
       
   494  * Holds the WordPress Rewrite object for creating pretty URLs
       
   495  *
       
   496  * @global WP_Rewrite $wp_rewrite WordPress rewrite component.
       
   497  * @since 1.5.0
       
   498  */
       
   499 $GLOBALS['wp_rewrite'] = new WP_Rewrite();
       
   500 
       
   501 /**
       
   502  * WordPress Object
       
   503  *
   602  *
   504  * @global WP $wp Current WordPress environment instance.
   603  * @global WP $wp Current WordPress environment instance.
       
   604  */
       
   605 $GLOBALS['wp'] = new WP();
       
   606 
       
   607 /**
       
   608  * WordPress Widget Factory Object
       
   609  *
       
   610  * @since 2.8.0
       
   611  *
       
   612  * @global WP_Widget_Factory $wp_widget_factory
       
   613  */
       
   614 $GLOBALS['wp_widget_factory'] = new WP_Widget_Factory();
       
   615 
       
   616 /**
       
   617  * WordPress User Roles
       
   618  *
   505  * @since 2.0.0
   619  * @since 2.0.0
   506  */
       
   507 $GLOBALS['wp'] = new WP();
       
   508 
       
   509 /**
       
   510  * WordPress Widget Factory Object
       
   511  *
       
   512  * @global WP_Widget_Factory $wp_widget_factory
       
   513  * @since 2.8.0
       
   514  */
       
   515 $GLOBALS['wp_widget_factory'] = new WP_Widget_Factory();
       
   516 
       
   517 /**
       
   518  * WordPress User Roles
       
   519  *
   620  *
   520  * @global WP_Roles $wp_roles WordPress role management object.
   621  * @global WP_Roles $wp_roles WordPress role management object.
   521  * @since 2.0.0
       
   522  */
   622  */
   523 $GLOBALS['wp_roles'] = new WP_Roles();
   623 $GLOBALS['wp_roles'] = new WP_Roles();
   524 
   624 
   525 /**
   625 /**
   526  * Fires before the theme is loaded.
   626  * Fires before the theme is loaded.
   527  *
   627  *
   528  * @since 2.6.0
   628  * @since 2.6.0
   529  */
   629  */
   530 do_action( 'setup_theme' );
   630 do_action( 'setup_theme' );
   531 
   631 
   532 // Define the template related constants.
   632 // Define the template related constants and globals.
   533 wp_templating_constants();
   633 wp_templating_constants();
       
   634 wp_set_template_globals();
   534 
   635 
   535 // Load the default text localization domain.
   636 // Load the default text localization domain.
   536 load_default_textdomain();
   637 load_default_textdomain();
   537 
   638 
   538 $locale      = get_locale();
   639 $locale      = get_locale();
   543 unset( $locale_file );
   644 unset( $locale_file );
   544 
   645 
   545 /**
   646 /**
   546  * WordPress Locale object for loading locale domain date and various strings.
   647  * WordPress Locale object for loading locale domain date and various strings.
   547  *
   648  *
       
   649  * @since 2.1.0
       
   650  *
   548  * @global WP_Locale $wp_locale WordPress date and time locale object.
   651  * @global WP_Locale $wp_locale WordPress date and time locale object.
   549  * @since 2.1.0
       
   550  */
   652  */
   551 $GLOBALS['wp_locale'] = new WP_Locale();
   653 $GLOBALS['wp_locale'] = new WP_Locale();
   552 
   654 
   553 /**
   655 /**
   554  * WordPress Locale Switcher object for switching locales.
   656  * WordPress Locale Switcher object for switching locales.
   611  * This hook is fired once WP, all plugins, and the theme are fully loaded and instantiated.
   713  * This hook is fired once WP, all plugins, and the theme are fully loaded and instantiated.
   612  *
   714  *
   613  * Ajax requests should use wp-admin/admin-ajax.php. admin-ajax.php can handle requests for
   715  * Ajax requests should use wp-admin/admin-ajax.php. admin-ajax.php can handle requests for
   614  * users not logged in.
   716  * users not logged in.
   615  *
   717  *
   616  * @link https://codex.wordpress.org/AJAX_in_Plugins
   718  * @link https://developer.wordpress.org/plugins/javascript/ajax
   617  *
   719  *
   618  * @since 3.0.0
   720  * @since 3.0.0
   619  */
   721  */
   620 do_action( 'wp_loaded' );
   722 do_action( 'wp_loaded' );