diff --git a/wp-includes/option.php b/wp-includes/option.php index 3620064c17..406ff6ac91 100644 --- a/wp-includes/option.php +++ b/wp-includes/option.php @@ -189,16 +189,19 @@ function form_option( $option ) { * Loads and caches all autoloaded options, if available or all options. * * @since 2.2.0 + * @since 5.4.0 The `$force_cache` parameter was added. * * @global wpdb $wpdb WordPress database abstraction object. * + * @param bool $force_cache Optional. Whether to force an update of the local cache + * from the persistent cache. Default false. * @return array List of all options. */ -function wp_load_alloptions() { +function wp_load_alloptions( $force_cache = false ) { global $wpdb; if ( ! wp_installing() || ! is_multisite() ) { - $alloptions = wp_cache_get( 'alloptions', 'options' ); + $alloptions = wp_cache_get( 'alloptions', 'options', $force_cache ); } else { $alloptions = false; } @@ -397,7 +400,7 @@ function update_option( $option, $value, $autoload = null ) { } if ( ! wp_installing() ) { - $alloptions = wp_load_alloptions(); + $alloptions = wp_load_alloptions( true ); if ( isset( $alloptions[ $option ] ) ) { $alloptions[ $option ] = $serialized_value; wp_cache_set( 'alloptions', $alloptions, 'options' ); @@ -505,7 +508,7 @@ function add_option( $option, $value = '', $deprecated = '', $autoload = 'yes' ) if ( ! wp_installing() ) { if ( 'yes' == $autoload ) { - $alloptions = wp_load_alloptions(); + $alloptions = wp_load_alloptions( true ); $alloptions[ $option ] = $serialized_value; wp_cache_set( 'alloptions', $alloptions, 'options' ); } else { @@ -583,7 +586,7 @@ function delete_option( $option ) { $result = $wpdb->delete( $wpdb->options, array( 'option_name' => $option ) ); if ( ! wp_installing() ) { if ( 'yes' == $row->autoload ) { - $alloptions = wp_load_alloptions(); + $alloptions = wp_load_alloptions( true ); if ( is_array( $alloptions ) && isset( $alloptions[ $option ] ) ) { unset( $alloptions[ $option ] ); wp_cache_set( 'alloptions', $alloptions, 'options' ); diff --git a/wp-includes/version.php b/wp-includes/version.php index 578f30e5b6..1e7face89a 100644 --- a/wp-includes/version.php +++ b/wp-includes/version.php @@ -13,7 +13,7 @@ * * @global string $wp_version */ -$wp_version = '5.4-alpha-46752'; +$wp_version = '5.4-alpha-46753'; /** * Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.