clean_attachment_cache( int $id, bool $clean_terms = false )

Will clean the attachment in the cache.

Description

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.

Parameters

$idintrequired
The attachment ID in the cache to clean.
$clean_termsbooloptional
Whether to clean terms cache.

Default:false

Source

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 );
}

Hooks

do_action( ‘clean_attachment_cache’, int $id )

Fires after the given attachment’s cache is cleaned.

Changelog

VersionDescription
3.0.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.