delete_expired_transients( bool $force_db = false )

In this article

Deletes all expired transients.

Description

Note that this function won’t do anything if an external object cache is in use.

The multi-table delete syntax is used to delete the transient record from table a, and the corresponding transient_timeout record from table b.

Parameters

$force_dbbooloptional
Force cleanup to run against the database even when an external object cache is used.

Default:false

Source

function delete_expired_transients( $force_db = false ) {	global $wpdb;	if ( ! $force_db && wp_using_ext_object_cache() ) {	return;	}	$wpdb->query(	$wpdb->prepare(	"DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b	WHERE a.option_name LIKE %s	AND a.option_name NOT LIKE %s	AND b.option_name = CONCAT( '_transient_timeout_', SUBSTRING( a.option_name, 12 ) )	AND b.option_value < %d",	$wpdb->esc_like( '_transient_' ) . '%',	$wpdb->esc_like( '_transient_timeout_' ) . '%',	time()	)	);	if ( ! is_multisite() ) {	// Single site stores site transients in the options table.	$wpdb->query(	$wpdb->prepare(	"DELETE a, b FROM {$wpdb->options} a, {$wpdb->options} b	WHERE a.option_name LIKE %s	AND a.option_name NOT LIKE %s	AND b.option_name = CONCAT( '_site_transient_timeout_', SUBSTRING( a.option_name, 17 ) )	AND b.option_value < %d",	$wpdb->esc_like( '_site_transient_' ) . '%',	$wpdb->esc_like( '_site_transient_timeout_' ) . '%',	time()	)	);	} elseif ( is_multisite() && is_main_site() && is_main_network() ) {	// Multisite stores site transients in the sitemeta table.	$wpdb->query(	$wpdb->prepare(	"DELETE a, b FROM {$wpdb->sitemeta} a, {$wpdb->sitemeta} b	WHERE a.meta_key LIKE %s	AND a.meta_key NOT LIKE %s	AND b.meta_key = CONCAT( '_site_transient_timeout_', SUBSTRING( a.meta_key, 17 ) )	AND b.meta_value < %d",	$wpdb->esc_like( '_site_transient_' ) . '%',	$wpdb->esc_like( '_site_transient_timeout_' ) . '%',	time()	)	);	} } 

Changelog

VersionDescription
4.9.0Introduced.

User Contributed Notes

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