Changeset 12989 for trunk/wp-admin/includes/user.php
- Timestamp:
- 02/06/2010 12:35:15 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/wp-admin/includes/user.php
r12983 r12989 567 567 * @since unknown 568 568 * @access private 569 * @var unknown_type569 * @var string 570 570 */ 571 571 var $query_limit; … … 574 574 * {@internal Missing Description}} 575 575 * 576 * @since unknown 577 * @access private 578 * @var unknown_type 579 */ 580 var $query_sort; 581 582 /** 583 * {@internal Missing Description}} 584 * 585 * @since unknown 586 * @access private 587 * @var unknown_type 588 */ 589 var $query_from_where; 576 * @since 3.0 577 * @access private 578 * @var string 579 */ 580 var $query_orderby; 581 582 /** 583 * {@internal Missing Description}} 584 * 585 * @since 3.0 586 * @access private 587 * @var string 588 */ 589 var $query_from; 590 591 /** 592 * {@internal Missing Description}} 593 * 594 * @since 3.0 595 * @access private 596 * @var string 597 */ 598 var $query_where; 590 599 591 600 /** … … 658 667 global $wpdb; 659 668 $this->first_user = ($this->page - 1) * $this->users_per_page; 669 660 670 $this->query_limit = $wpdb->prepare(" LIMIT %d, %d", $this->first_user, $this->users_per_page); 661 $this->query_sort = ' ORDER BY user_login'; 671 $this->query_orderby = ' ORDER BY user_login'; 672 662 673 $search_sql = ''; 663 674 if ( $this->search_term ) { … … 670 681 } 671 682 672 $this->query_from_where = "FROM $wpdb->users"; 683 $this->query_from = " FROM $wpdb->users"; 684 $this->query_where = " WHERE 1=1 $search_sql"; 685 673 686 if ( $this->role ) { 674 $this->query_from_where .= $wpdb->prepare(" INNER JOIN $wpdb->usermeta ON $wpdb->users.ID = $wpdb->usermeta.user_id WHERE $wpdb->usermeta.meta_key = '{$wpdb->prefix}capabilities' AND $wpdb->usermeta.meta_value LIKE %s", '%' . $this->role . '%'); 675 } elseif ( !is_multisite() ) { 676 $this->query_from_where .= " WHERE 1=1"; 677 } else { 687 $this->query_from .= " INNER JOIN $wpdb->usermeta ON $wpdb->users.ID = $wpdb->usermeta.user_id"; 688 $this->query_where .= $wpdb->prepare(" AND $wpdb->usermeta.meta_key = '{$wpdb->prefix}capabilities' AND $wpdb->usermeta.meta_value LIKE %s", '%' . $this->role . '%'); 689 } elseif ( is_multisite() ) { 678 690 $level_key = $wpdb->get_blog_prefix() . 'capabilities'; // wpmu site admins don't have user_levels 679 $this->query_from_where .= ", $wpdb->usermeta WHERE $wpdb->users.ID = $wpdb->usermeta.user_id AND meta_key = '{$level_key}'"; 691 $this->query_from .= ", $wpdb->usermeta"; 692 $this->query_where .= " AND $wpdb->users.ID = $wpdb->usermeta.user_id AND meta_key = '{$level_key}'"; 680 693 } 681 $this->query_from_where .= " $search_sql"; 682 694 695 do_action_ref_array( 'pre_user_search', array( &$this ) ); 683 696 } 684 697 … … 693 706 function query() { 694 707 global $wpdb; 695 $this->results = $wpdb->get_col('SELECT ID ' . $this->query_from_where . $this->query_sort . $this->query_limit); 708 709 $this->results = $wpdb->get_col("SELECT DISTINCT($wpdb->users.ID)" . $this->query_from . $this->query_where . $this->query_orderby . $this->query_limit); 696 710 697 711 if ( $this->results ) 698 $this->total_users_for_query = $wpdb->get_var( 'SELECT COUNT(ID) ' . $this->query_from_where); // no limit712 $this->total_users_for_query = $wpdb->get_var("SELECT COUNT(DISTINCT($wpdb->users.ID))" . $this->query_from . $this->query_where); // no limit 699 713 else 700 714 $this->search_errors = new WP_Error('no_matching_users_found', __('No matching users were found!'));
Note: See TracChangeset
for help on using the changeset viewer.