clean_attachment_cache()WP 3.0.0

Will clean the attachment in the cache.

Cleaning means delete from the cache. Optionally will clean the term object cache associated with the attachment ID.

This function will not run if $_wp_suspend_cache_invalidation is not empty.

Hooks from the function

Return

null. Nothing (null).

Usage

clean_attachment_cache( $id, $clean_terms );
$id(int) (required)
The attachment ID in the cache to clean.
$clean_terms(true|false)
Whether to clean terms cache.
Default: false

Notes

  • Global. true|false. $_wp_suspend_cache_invalidation

Changelog

Since 3.0.0 Introduced.

clean_attachment_cache() code WP 6.5.2

function clean_attachment_cache( $id, $clean_terms = false ) {
	global $_wp_suspend_cache_invalidation;

	if ( ! empty( $_wp_suspend_cache_invalidation ) ) {
		return;
	}

	$id = (int) $id;

	wp_cache_delete( $id, 'posts' );
	wp_cache_delete( $id, 'post_meta' );

	if ( $clean_terms ) {
		clean_object_term_cache( $id, 'attachment' );
	}

	/**
	 * Fires after the given attachment's cache is cleaned.
	 *
	 * @since 3.0.0
	 *
	 * @param int $id Attachment ID.
	 */
	do_action( 'clean_attachment_cache', $id );
}