The clean_user_cache WordPress action is triggered immediately after the given user’s cache is cleaned.
Usage
add_action('clean_user_cache', 'your_custom_function', 10, 2);
function your_custom_function($user_id, $user) {
// your custom code here
}
Parameters
$user_id(int): User ID.$user(WP_User): User object.
More information
See WordPress Developer Resources: clean_user_cache
Examples
Log user cache cleaning
Log when a user’s cache is cleaned in a custom log file.
add_action('clean_user_cache', 'log_user_cache_clean', 10, 2);
function log_user_cache_clean($user_id, $user) {
error_log("User cache cleaned for user ID: {$user_id}");
}
Send an email notification
Send an email notification to the admin when a user’s cache is cleaned.
add_action('clean_user_cache', 'notify_admin_user_cache_clean', 10, 2);
function notify_admin_user_cache_clean($user_id, $user) {
$admin_email = get_option('admin_email');
$subject = "User Cache Cleaned: {$user->user_login}";
$message = "User cache cleaned for user: {$user->user_login} (ID: {$user_id})";
wp_mail($admin_email, $subject, $message);
}
Update a custom user meta
Update a custom user meta field with the timestamp when the user’s cache is cleaned.
add_action('clean_user_cache', 'update_user_cache_clean_timestamp', 10, 2);
function update_user_cache_clean_timestamp($user_id, $user) {
update_user_meta($user_id, 'cache_clean_timestamp', time());
}
Invalidate custom cache
Invalidate custom cache related to the user when their cache is cleaned.
add_action('clean_user_cache', 'invalidate_custom_user_cache', 10, 2);
function invalidate_custom_user_cache($user_id, $user) {
// Invalidate custom cache for the user
}
Trigger third-party API
Trigger a third-party API when a user’s cache is cleaned.
add_action('clean_user_cache', 'trigger_third_party_api', 10, 2);
function trigger_third_party_api($user_id, $user) {
// Call the third-party API with user data
}