public static function getTransientWithUser($transient, $user_id = null)
{
$user_id = is_null($user_id) ? get_current_user_id() : $user_id;
$pre = apply_filters('pre_user_transient_' . $transient, false, $user_id);
if (false !== $pre) {
return $pre;
}
$transient_timeout = '_transient_timeout_' . $transient;
$transient = '_transient_' . $transient;
if (get_user_meta($user_id, $transient_timeout, true) < time()) {
delete_user_meta($user_id, $transient);
delete_user_meta($user_id, $transient_timeout);
return false;
}
$value = get_user_meta($user_id, $transient, true);
return apply_filters('user_transient_' . $transient, $value, $user_id);
}