mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-08-16 14:50:29 +00:00
Handle WP_User objects properly in update_user_caches().
We should not be storing the `WP_User` object in the cache, as it may contain usermeta and other data that's cache elsewhere. Props dd32. See #24635. git-svn-id: https://develop.svn.wordpress.org/trunk@34919 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -1102,9 +1102,18 @@ function sanitize_user_field($field, $value, $user_id, $context) {
|
||||
*
|
||||
* @since 3.0.0
|
||||
*
|
||||
* @param object $user User object to be cached
|
||||
* @param object|WP_User $user User object to be cached
|
||||
* @return bool|null Returns false on failure.
|
||||
*/
|
||||
function update_user_caches($user) {
|
||||
function update_user_caches( $user ) {
|
||||
if ( $user instanceof WP_User ) {
|
||||
if ( ! $user->exists() ) {
|
||||
return false;
|
||||
}
|
||||
|
||||
$user = $user->data;
|
||||
}
|
||||
|
||||
wp_cache_add($user->ID, $user, 'users');
|
||||
wp_cache_add($user->user_login, $user->ID, 'userlogins');
|
||||
wp_cache_add($user->user_email, $user->ID, 'useremail');
|
||||
|
||||
Reference in New Issue
Block a user