wp_cache_flush_runtime()WP 6.0.0

Полностью очищает объектный кэш, только если он хранится в памяти (не используется постоянное кэширование). При постоянном кэшировании ничего не делает.

Как обсуждалось в тикете #55080, WP нуждался в способе, позволяющем пользователям очищать объектный кэш в памяти, при этом не трогать кэш, если он хранится постоянно (не в памяти), например, в Redis - подробнее читайте Постоянный Объектный кэш.

Эта возможность часто была нужна для случаев, когда запускаются длительные процессы в крон задачах или через WP-CLI.

Работает на основе: wp_using_ext_object_cache(), wp_cache_flush()

Хуков нет.

Возвращает

true|false. True при успехе, false при неудаче.

Использование

wp_cache_flush_runtime();

Примеры

0

#1 Пример использования

В приведенном примере объектный кэш будет сброшен после того, как в базу данных будет добавлено 100 постов.

$counter = 0;

foreach ( $posts as $post ) {
	$counter++;

	wp_insert_post( $post );

	if ( 100 === $counter ) {
		wp_cache_flush_runtime();
		$counter = 0;
	} 

}

Заметки

Список изменений

С версии 6.0.0 Введена.

Код wp_cache_flush_runtime() WP 6.0

function wp_cache_flush_runtime() {
	return wp_using_ext_object_cache() ? false : wp_cache_flush();
}