BP_Friends_Friendship::search_users_count( string $filter )
Get a count of users who match a search term.
Description
Parameters
- $filter
-
(Required) Search term.
Return
(int) Count of users matching the search term.
Source
File: bp-friends/classes/class-bp-friends-friendship.php
public static function search_users_count( $filter ) {
global $wpdb;
// Only search for matching strings at the beginning of the
// name (@todo - figure out why this restriction).
$search_terms_like = bp_esc_like( $filter ) . '%';
$usermeta_table = $wpdb->prefix . 'usermeta';
$users_table = $wpdb->base_prefix . 'users';
$bp = buddypress();
// Filter the user_ids based on the search criteria.
if ( bp_is_active( 'xprofile' ) ) {
$sql = $wpdb->prepare( "SELECT COUNT(DISTINCT d.user_id) FROM {$bp->profile->table_name_data} d, {$users_table} u WHERE d.user_id = u.id AND d.value LIKE %s", $search_terms_like );
} else {
$sql = $wpdb->prepare( "SELECT COUNT(DISTINCT user_id) FROM {$usermeta_table} WHERE meta_value LIKE %s", $search_terms_like );
}
$user_count = $wpdb->get_col($sql);
if ( empty( $user_count ) )
return false;
return $user_count[0];
}
Changelog
| Version | Description |
|---|---|
| BuddyPress 1.0.0 | Introduced. |
Questions?
We're always happy to help with code or other questions you might have! Search our developer docs, contact support, or connect with our sales team.