Skip to content
Create a gist now

Instantly share code, notes, and snippets.

Hide Subscriber Users from BuddyPress member Directory
add_action('bp_ajax_querystring','bpdev_exclude_users',20,2);
function bpdev_exclude_users($qs=false,$object=false){
//list of users to exclude
if($object!='members')//hide for members only
return $qs;
$excluded_user=join(',',bpdev_get_subscriber_user_ids());//comma separated ids of users whom you want to exclude
$args=wp_parse_args($qs);
//check if we are searching for friends list etc?, do not exclude in this case
if(!empty($args['user_id']))
return $qs;
if(!empty($args['exclude']))
$args['exclude']=$args['exclude'].','.$excluded_user;
else
$args['exclude']=$excluded_user;
$qs=build_query($args);
return $qs;
}
function bpdev_get_subscriber_user_ids(){
$subscribers= get_users( array( 'role' => 'subscriber', 'fields' => 'ID' ) );
return $users;
}
@jibbius

You can replace the entire bpdev_get_subscriber_user_ids() function, with this single line of code:

$excluded_user = implode(',',get_users('role=subscriber&fields=ID'));
@virtualgeorge

What if you wanted to hide Administrators as well as Subscribers?

@marriageagency

I want to Hide Subscriber Users from BuddyPress member Directory. Where exactly should I create the hide-subscribers.php file, in which folder? I'm a novice at this so any details that you can provide to help me with this will be greatly appreciated. Thank you.

@inxys

Please explain bit more i want hide the subscriber user role in buddypress member list, then i want to know how to use this hook code used in another plugin

@hannah-wright

inxys: in case you're still wondering, you'll want to paste the code in "custom_buddypress/bp-functions.php"

@sbrajesh
Owner

I have updated the code. Please be warned that it had serious performance issues due to an oversight. If you are using it, Update the code.

@rpandassociates

so this goes in members loops ?
I want to show only members that have a certain pmpro level

@fscbmwcca

Hi, I'm a newbie and know very little php.
I want to hide buddypress to all subscribers. As I am reading this you have to enter the subscriber ids as indicated //comma separated ids of users whom you want to exclude. Is there any way to indicate all subscribers and not enter the ids? I am going to allow subscribers to sign up as general public and do not want them to have access to buddypress or bbpress. Non-subscribers will have access to buddypress and bbpress. Is this possible to do?
Any assistance would be appreciated.
Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.