wp_cache_add_global_groups()
Добавляет указанную группу объектного кэша в список глобальных групп. Нужно для мультисайта.
Глобальные группы кэша - это группы для которых не устанавливается префикс блога и единый кэш работает для всей сети.
Как это работает
При добавлении объект. кэша, через функцию wp_cache_add( $key, $data, $group ) в третьем параметре можно указать группу. Если эта группа является глобальной, то кэш будет один для всех сайтов сети. Если нет, то кэш будет отличаться - у каждого сайта сети будет свой кэш.
По умолчанию глобальными группами являются:
users userlogins usermeta user_meta useremail userslugs site-transient site-options blog-lookup blog-details site-details rss global-posts blog-id-cache networks sites
Если нужно, чтобы объектный кэш вообще не работал для указанной группы, используйте функцию wp_cache_add_non_persistent_groups().
Хуков нет.
Возвращает
null
. Ничего (null)
Использование
wp_cache_add_global_groups( $groups );
- $groups(строка/массив) (обязательный)
- Название группы или массив с названиями групп, которые пометить как глобальные.
Примеры
#1 Пример добавления глобальной группы
Допустим мы создали некую сущность со своей таблицей в БД и и отдельной таблицей с метаданными. Сущность называется 'tests'
. Метаданные управляются функциями WP: add_metadata(), get_metadata() и тд.
Теперь, нам нужно сделать, чтобы сохраняемые в кэш данные этой сущности были едиными для всей сети сайтов, а не отличались для разных сайтов сети. Для этого сделаем группу tests_meta
глобальной (она указывается при добавлении кэша метаданных).
wp_cache_add_global_groups( 'tests_meta' );
Заметки
- Смотрите: WP_Object_Cache::add_global_groups()
- Global. WP_Object_Cache. $wp_object_cache Object cache global instance.
Список изменений
С версии 2.6.0 | Введена. |
Код wp_cache_add_global_groups() wp cache add global groups WP 6.3.1
function wp_cache_add_global_groups( $groups ) { global $wp_object_cache; $wp_object_cache->add_global_groups( $groups ); }