Ticket #19500: 19500.4.diff
File 19500.4.diff, 2.1 KB (added by , 13 years ago) |
---|
-
wp-includes/user.php
652 652 * 653 653 * @param int $user_id User ID 654 654 * @param bool $all Whether to retrieve all blogs, or only blogs that are not marked as deleted, archived, or spam. 655 * @return array A list of the user's blogs. False if the user was not found or an empty array if the user hasno blogs.655 * @return array A list of the user's blogs. An empty array if the user doesn't exist or belongs to no blogs. 656 656 */ 657 657 function get_blogs_of_user( $user_id, $all = false ) { 658 658 global $wpdb; … … 661 661 662 662 // Logged out users can't have blogs 663 663 if ( empty( $user_id ) ) 664 return false;664 return array(); 665 665 666 666 $keys = get_user_meta( $user_id ); 667 667 if ( empty( $keys ) ) 668 return false;668 return array(); 669 669 670 670 if ( ! is_multisite() ) { 671 671 $blog_id = get_current_blog_id(); … … 745 745 $blog_id = get_current_blog_id(); 746 746 747 747 $blogs = get_blogs_of_user( $user_id ); 748 if ( is_array( $blogs ) ) 749 return array_key_exists( $blog_id, $blogs ); 750 else 751 return false; 748 return array_key_exists( $blog_id, $blogs ); 752 749 } 753 750 754 751 /** -
wp-admin/includes/user.php
264 264 } 265 265 266 266 // FINALLY, delete user 267 if ( !is_multisite() ) { 268 $wpdb->delete( $wpdb->usermeta, array( 'user_id' => $id ) ); 267 if ( is_multisite() ) { 268 remove_user_from_blog( $id, get_current_blog_id() ); 269 } else { 270 $meta = $wpdb->get_col( $wpdb->prepare( "SELECT umeta_id FROM $wpdb->usermeta WHERE user_id = %d", $id ) ); 271 foreach ( $meta as $mid ) 272 delete_metadata_by_mid( 'user', $mid ); 273 269 274 $wpdb->delete( $wpdb->users, array( 'ID' => $id ) ); 270 } else {271 $level_key = $wpdb->get_blog_prefix() . 'capabilities'; // wpmu site admins don't have user_levels272 $wpdb->delete( $wpdb->usermeta, array( 'user_id' => $id , 'meta_key' => $level_key ) );273 275 } 274 276 275 277 clean_user_cache( $user );