Themes: Add 'theme_files' cache group to block pattern cache operations.

Use 'theme_files' cache group for block pattern caches. Previously, block pattern cache data was not stored in a cache group and used the default group. This new cache group, is setup as a global cache group, meaning that sites using multisite, will have a single cache for block pattern data per theme. This change also no longer invalidate block pattern caches in multisite instances, meaning block pattern caches can be shared between sites on a network, meaning less repeated data in the object cache. 

Props spacedmonkey, flixos90, joemcgill.
Fixes #60120.

git-svn-id: https://develop.svn.wordpress.org/trunk@57608 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Jonny Harris
2024-02-13 08:52:23 +00:00
parent 26f836091c
commit 9a8d2c4dba
6 changed files with 12 additions and 5 deletions

View File

@@ -837,8 +837,10 @@ function switch_theme( $stylesheet ) {
update_option( 'theme_switched', $old_theme->get_stylesheet() );
// Clear pattern caches.
$new_theme->delete_pattern_cache();
$old_theme->delete_pattern_cache();
if ( ! is_multisite() ) {
$new_theme->delete_pattern_cache();
$old_theme->delete_pattern_cache();
}
// Set autoload=no for the old theme, autoload=yes for the switched theme.
$theme_mods_options = array(