woof_use_wp_cache
Хук woof_use_wp_cache включает объектный кэш wp-cache, который более оптимизирован. Показал хорошие результаты в тестах.
ВНИМАНИЕ: обязательно должен быть установлен какой-либо плагин объектного кэширования для WordPress, иначе эффекта не будет. Пример: https://wordpress.org/plugins/w3-total-cache/
Чтобы включить объектный кэш wp, добавьте в файл functions.php текущей темы WordPress следующий код:
add_filter('woof_use_wp_cache', function($is){
return true;
});
Информация:
По умолчанию объектное кэширование в WordPress непостоянно, то есть оно работает в рамках одного HTTP-запроса (только для генерации одной страницы) и не работает между разными запросами (при переходе на новую страницу кэш со старой страницы не используется). По мере генерации страницы данные сохраняются в кэше (RAM) и берутся из него при повторном запросе тех же данных в коде. Например, поэтому функция get_option() не делает запрос к базе данных каждый раз при последующих вызовах, а берёт данные из объектного кэша.
В WordPress есть возможность подключить внешнее хранилище для объектного кэша и тем самым сделать объектное кэширование постоянным. Тогда данные из кэша будут работать между запросами.
Чтобы включить постоянный объектный кэш, нужно установить плагин. Таких плагинов несколько, так как есть несколько вариантов хранения такого кэша, вот некоторые из них:
- Redis Object Cache — использует сервер Redis.
- Memcached Object Cache — использует сервер Memcached.
- APC Object Cache — использует сервер APC.
Чтобы определить, используется ли постоянное кэширование, WordPress использует функцию wp_using_ext_object_cache(). Это полезно разработчикам, когда нужно выполнять разные действия в зависимости от наличия плагина кэширования.