Changeset 15574
- Timestamp:
- 09/05/2010 06:47:25 PM (14 years ago)
- Location:
- trunk/wp-includes
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-includes/functions.php
r15568 r15574 2981 2981 2982 2982 /** 2983 * Extract a slice of an array, given a list of keys 2984 * 2985 * @since 3.1.0 2986 * 2987 * @param array $array The original array 2988 * @param array $keys The list of keys 2989 * @return array The array slice 2990 */ 2991 function wp_array_slice_assoc( $array, $keys ) { 2992 $slice = array(); 2993 foreach ( $keys as $key ) 2994 if ( isset( $array[ $key ] ) ) 2995 $slice[ $key ] = $array[ $key ]; 2996 2997 return $slice; 2998 } 2999 3000 /** 2983 3001 * Filters a list of objects, based on a set of key => value arguments 2984 3002 * -
trunk/wp-includes/user.php
r15570 r15574 462 462 } 463 463 464 $meta_query = array(); 465 foreach ( array( 'meta_key', 'meta_value', 'meta_compare' ) as $key ) 466 if ( isset( $qv[ $key ] ) ) 467 $meta_query[ $key ] = $qv[ $key ]; 468 $meta_queries[] = $meta_query; 464 $meta_queries[] = wp_array_slice_assoc( $qv, array( 'meta_key', 'meta_value', 'meta_compare' ) ); 469 465 470 466 $meta_query_sql = _wp_meta_sql( $meta_queries, 'user_id', $wpdb->usermeta ); … … 832 828 extract( $r, EXTR_SKIP ); 833 829 834 $blog_prefix = $wpdb->get_blog_prefix( $blog_id ); 835 $query = "SELECT {$wpdb->users}.* FROM $wpdb->users, $wpdb->usermeta WHERE {$wpdb->users}.ID = {$wpdb->usermeta}.user_id AND meta_key = '{$blog_prefix}capabilities'"; 836 837 $query_where = array(); 838 839 if ( is_array($include) ) 840 $include = join(',', $include); 841 $include = preg_replace('/[^0-9,]/', '', $include); // (int) 842 if ( $include ) 843 $query_where[] = "ID IN ($include)"; 844 845 if ( is_array($exclude) ) 846 $exclude = join(',', $exclude); 847 $exclude = preg_replace('/[^0-9,]/', '', $exclude); // (int) 848 if ( $exclude ) 849 $query_where[] = "ID NOT IN ($exclude)"; 850 851 if ( $query_where ) 852 $query .= " AND " . join(' AND', $query_where); 853 854 $query .= " ORDER BY $orderby $order"; 855 856 $users = $wpdb->get_results( $query ); 830 $users = get_users( wp_array_slice_assoc( $args, array( 'blog_id', 'include', 'exclude', 'orderby', 'order' ) ) ); 857 831 858 832 $output = '';
Note: See TracChangeset
for help on using the changeset viewer.