clean_post_cache()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
clean_post_cache( int|WP_Post $post )
Описание
Очистка означает удаление записи из кэша. Также будет вызвана очистка кэша объектов терминов, связанных с идентификатором записи.
Эта функция не выполняется, если $_wp_suspend_cache_invalidation не пусто. См. wp_suspend_cache_invalidation() .
Оригинал (английский)
Cleaning means delete from the cache of the post. Will call to clean the term object cache associated with the post ID.
This function not run if $_wp_suspend_cache_invalidation is not empty. See wp_suspend_cache_invalidation() .
Параметры
$post
int|WP_Post
обязательный
Исходный код
wp-includes/post.php:7718
function clean_post_cache( $post ) {
global $_wp_suspend_cache_invalidation;
if ( ! empty( $_wp_suspend_cache_invalidation ) ) {
return;
}
$post = get_post( $post );
if ( ! $post ) {
return;
}
wp_cache_delete( $post->ID, 'posts' );
wp_cache_delete( 'post_parent:' . (string) $post->ID, 'posts' );
wp_cache_delete( $post->ID, 'post_meta' );
clean_object_term_cache( $post->ID, $post->post_type );
wp_cache_delete( 'wp_get_archives', 'general' );
/**
* Fires immediately after the given post's cache is cleaned.
*
* @since 2.5.0
*
* @param int $post_id Post ID.
* @param WP_Post $post Post object.
*/
do_action( 'clean_post_cache', $post->ID, $post );
if ( 'page' === $post->post_type ) {
wp_cache_delete( 'all_page_ids', 'posts' );
/**
* Fires immediately after the given page's cache is cleaned.
*
* @since 2.5.0
*
* @param int $post_id Post ID.
*/
do_action( 'clean_page_cache', $post->ID );
}
wp_cache_set_posts_last_changed();
}
История изменений
| Версия | Описание |
|---|---|
| 2.0.0 | Introduced. |

