diff -r c7c34916027a -r 177826044cd9 wp/wp-settings.php --- a/wp/wp-settings.php Mon Oct 14 18:06:33 2019 +0200 +++ b/wp/wp-settings.php Mon Oct 14 18:28:13 2019 +0200 @@ -17,6 +17,14 @@ // Include files required for initialization. require( ABSPATH . WPINC . '/load.php' ); +require( ABSPATH . WPINC . '/class-wp-paused-extensions-storage.php' ); +require( ABSPATH . WPINC . '/class-wp-fatal-error-handler.php' ); +require( ABSPATH . WPINC . '/class-wp-recovery-mode-cookie-service.php' ); +require( ABSPATH . WPINC . '/class-wp-recovery-mode-key-service.php' ); +require( ABSPATH . WPINC . '/class-wp-recovery-mode-link-service.php' ); +require( ABSPATH . WPINC . '/class-wp-recovery-mode-email-service.php' ); +require( ABSPATH . WPINC . '/class-wp-recovery-mode.php' ); +require( ABSPATH . WPINC . '/error-protection.php' ); require( ABSPATH . WPINC . '/default-constants.php' ); require_once( ABSPATH . WPINC . '/plugin.php' ); @@ -40,12 +48,15 @@ // Set initial default constants including WP_MEMORY_LIMIT, WP_MAX_MEMORY_LIMIT, WP_DEBUG, SCRIPT_DEBUG, WP_CONTENT_DIR and WP_CACHE. wp_initial_constants(); +// Make sure we register the shutdown handler for fatal errors as soon as possible. +wp_register_fatal_error_handler(); + // Check for the required PHP version and for the MySQL extension or a database drop-in. wp_check_php_mysql_versions(); // Disable magic quotes at runtime. Magic quotes are added using wpdb later in wp-settings.php. @ini_set( 'magic_quotes_runtime', 0 ); -@ini_set( 'magic_quotes_sybase', 0 ); +@ini_set( 'magic_quotes_sybase', 0 ); // WordPress calculates offsets from UTC. date_default_timezone_set( 'UTC' ); @@ -95,7 +106,10 @@ // Load early WordPress files. require( ABSPATH . WPINC . '/compat.php' ); require( ABSPATH . WPINC . '/class-wp-list-util.php' ); +require( ABSPATH . WPINC . '/formatting.php' ); +require( ABSPATH . WPINC . '/meta.php' ); require( ABSPATH . WPINC . '/functions.php' ); +require( ABSPATH . WPINC . '/class-wp-meta-query.php' ); require( ABSPATH . WPINC . '/class-wp-matchesmapregex.php' ); require( ABSPATH . WPINC . '/class-wp.php' ); require( ABSPATH . WPINC . '/class-wp-error.php' ); @@ -128,8 +142,9 @@ register_shutdown_function( 'shutdown_action_hook' ); // Stop most of WordPress from being loaded if we just want the basics. -if ( SHORTINIT ) +if ( SHORTINIT ) { return false; +} // Load the L10n library. require_once( ABSPATH . WPINC . '/l10n.php' ); @@ -142,7 +157,6 @@ // Load most of WordPress. require( ABSPATH . WPINC . '/class-wp-walker.php' ); require( ABSPATH . WPINC . '/class-wp-ajax-response.php' ); -require( ABSPATH . WPINC . '/formatting.php' ); require( ABSPATH . WPINC . '/capabilities.php' ); require( ABSPATH . WPINC . '/class-wp-roles.php' ); require( ABSPATH . WPINC . '/class-wp-role.php' ); @@ -157,8 +171,6 @@ require( ABSPATH . WPINC . '/class-wp-user-query.php' ); require( ABSPATH . WPINC . '/class-wp-session-tokens.php' ); require( ABSPATH . WPINC . '/class-wp-user-meta-session-tokens.php' ); -require( ABSPATH . WPINC . '/meta.php' ); -require( ABSPATH . WPINC . '/class-wp-meta-query.php' ); require( ABSPATH . WPINC . '/class-wp-metadata-lazyloader.php' ); require( ABSPATH . WPINC . '/general-template.php' ); require( ABSPATH . WPINC . '/link-template.php' ); @@ -229,16 +241,37 @@ require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-types-controller.php' ); require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-post-statuses-controller.php' ); require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-revisions-controller.php' ); +require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-autosaves-controller.php' ); require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-taxonomies-controller.php' ); require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-terms-controller.php' ); require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-users-controller.php' ); require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-comments-controller.php' ); +require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-search-controller.php' ); +require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-blocks-controller.php' ); +require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-block-renderer-controller.php' ); require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-settings-controller.php' ); +require( ABSPATH . WPINC . '/rest-api/endpoints/class-wp-rest-themes-controller.php' ); require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-meta-fields.php' ); require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-comment-meta-fields.php' ); require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-post-meta-fields.php' ); require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-term-meta-fields.php' ); require( ABSPATH . WPINC . '/rest-api/fields/class-wp-rest-user-meta-fields.php' ); +require( ABSPATH . WPINC . '/rest-api/search/class-wp-rest-search-handler.php' ); +require( ABSPATH . WPINC . '/rest-api/search/class-wp-rest-post-search-handler.php' ); +require( ABSPATH . WPINC . '/class-wp-block-type.php' ); +require( ABSPATH . WPINC . '/class-wp-block-type-registry.php' ); +require( ABSPATH . WPINC . '/class-wp-block-parser.php' ); +require( ABSPATH . WPINC . '/blocks.php' ); +require( ABSPATH . WPINC . '/blocks/archives.php' ); +require( ABSPATH . WPINC . '/blocks/block.php' ); +require( ABSPATH . WPINC . '/blocks/calendar.php' ); +require( ABSPATH . WPINC . '/blocks/categories.php' ); +require( ABSPATH . WPINC . '/blocks/latest-comments.php' ); +require( ABSPATH . WPINC . '/blocks/latest-posts.php' ); +require( ABSPATH . WPINC . '/blocks/rss.php' ); +require( ABSPATH . WPINC . '/blocks/search.php' ); +require( ABSPATH . WPINC . '/blocks/shortcode.php' ); +require( ABSPATH . WPINC . '/blocks/tag-cloud.php' ); $GLOBALS['wp_embed'] = new WP_Embed(); @@ -258,6 +291,15 @@ // Load must-use plugins. foreach ( wp_get_mu_plugins() as $mu_plugin ) { include_once( $mu_plugin ); + + /** + * Fires once a single must-use plugin has loaded. + * + * @since 5.1.0 + * + * @param string $mu_plugin Full path to the plugin's main file. + */ + do_action( 'mu_plugin_loaded', $mu_plugin ); } unset( $mu_plugin ); @@ -266,6 +308,15 @@ foreach ( wp_get_active_network_plugins() as $network_plugin ) { wp_register_plugin_realpath( $network_plugin ); include_once( $network_plugin ); + + /** + * Fires once a single network-activated plugin has loaded. + * + * @since 5.1.0 + * + * @param string $network_plugin Full path to the plugin's main file. + */ + do_action( 'network_plugin_loaded', $network_plugin ); } unset( $network_plugin ); } @@ -277,8 +328,9 @@ */ do_action( 'muplugins_loaded' ); -if ( is_multisite() ) - ms_cookie_constants( ); +if ( is_multisite() ) { + ms_cookie_constants(); +} // Define constants after multisite is loaded. wp_cookie_constants(); @@ -299,10 +351,24 @@ // Register the default theme directory root register_theme_directory( get_theme_root() ); +if ( ! is_multisite() ) { + // Handle users requesting a recovery mode link and initiating recovery mode. + wp_recovery_mode()->initialize(); +} + // Load active plugins. foreach ( wp_get_active_and_valid_plugins() as $plugin ) { wp_register_plugin_realpath( $plugin ); include_once( $plugin ); + + /** + * Fires once a single activated plugin has loaded. + * + * @since 5.1.0 + * + * @param string $plugin Full path to the plugin's main file. + */ + do_action( 'plugin_loaded', $plugin ); } unset( $plugin ); @@ -314,8 +380,9 @@ wp_set_internal_encoding(); // Run wp_cache_postload() if object cache is enabled and the function exists. -if ( WP_CACHE && function_exists( 'wp_cache_postload' ) ) +if ( WP_CACHE && function_exists( 'wp_cache_postload' ) ) { wp_cache_postload(); +} /** * Fires once activated plugins have loaded. @@ -341,6 +408,7 @@ /** * WordPress Query object + * * @global WP_Query $wp_the_query * @since 2.0.0 */ @@ -349,6 +417,7 @@ /** * Holds the reference to @see $wp_the_query * Use this global for WordPress queries + * * @global WP_Query $wp_query * @since 1.5.0 */ @@ -356,6 +425,7 @@ /** * Holds the WordPress Rewrite object for creating pretty URLs + * * @global WP_Rewrite $wp_rewrite * @since 1.5.0 */ @@ -363,6 +433,7 @@ /** * WordPress Object + * * @global WP $wp * @since 2.0.0 */ @@ -370,6 +441,7 @@ /** * WordPress Widget Factory Object + * * @global WP_Widget_Factory $wp_widget_factory * @since 2.8.0 */ @@ -377,6 +449,7 @@ /** * WordPress User Roles + * * @global WP_Roles $wp_roles * @since 2.0.0 */ @@ -390,19 +463,21 @@ do_action( 'setup_theme' ); // Define the template related constants. -wp_templating_constants( ); +wp_templating_constants(); // Load the default text localization domain. load_default_textdomain(); -$locale = get_locale(); +$locale = get_locale(); $locale_file = WP_LANG_DIR . "/$locale.php"; -if ( ( 0 === validate_file( $locale ) ) && is_readable( $locale_file ) ) +if ( ( 0 === validate_file( $locale ) ) && is_readable( $locale_file ) ) { require( $locale_file ); +} unset( $locale_file ); /** * WordPress Locale object for loading locale domain date and various strings. + * * @global WP_Locale $wp_locale * @since 2.1.0 */ @@ -419,12 +494,12 @@ $GLOBALS['wp_locale_switcher']->init(); // Load the functions for the active theme, for both parent and child theme if applicable. -if ( ! wp_installing() || 'wp-activate.php' === $pagenow ) { - if ( TEMPLATEPATH !== STYLESHEETPATH && file_exists( STYLESHEETPATH . '/functions.php' ) ) - include( STYLESHEETPATH . '/functions.php' ); - if ( file_exists( TEMPLATEPATH . '/functions.php' ) ) - include( TEMPLATEPATH . '/functions.php' ); +foreach ( wp_get_active_and_valid_themes() as $theme ) { + if ( file_exists( $theme . '/functions.php' ) ) { + include $theme . '/functions.php'; + } } +unset( $theme ); /** * Fires after the theme is loaded. @@ -455,7 +530,7 @@ require( $file ); die(); } - unset($file); + unset( $file ); } /**