Skip to content

Instantly share code, notes, and snippets.

@Cathrin-Demyokhina
Created October 13, 2017 07:36
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Cathrin-Demyokhina/9da9fd5c044049a061a62ad9fcc89908 to your computer and use it in GitHub Desktop.
Save Cathrin-Demyokhina/9da9fd5c044049a061a62ad9fcc89908 to your computer and use it in GitHub Desktop.
Buddypress Remove admin from members list and all the activity
//add this to child-theme functions.php
//deny access to admins profile. User is redirected to the homepage
function bpfr_hide_admins_profile() {
global $bp;
if(bp_is_profile && $bp->displayed_user->id == 1 && $bp->loggedin_user->id != 1) :
wp_redirect( home_url() );
exit;
endif;
}
add_action( 'wp', 'bpfr_hide_admins_profile', 1 );
// Remove admin from the member directory
function bpdev_exclude_users($qs=false,$object=false){
$excluded_user='1'; // Id's to remove, separated by comma
if($object != 'members' && $object != 'friends')// hide admin to members & friends
return $qs;
$args=wp_parse_args($qs);
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;
}
add_action('bp_ajax_querystring','bpdev_exclude_users',20,2);
// once admin is removed, we must recount the members !
function bpfr_hide_get_total_filter($count){
return $count-1;
}
add_filter('bp_get_total_member_count','bpfr_hide_get_total_filter');
// hide admin's activities from all activity feeds
function bpfr_hide_admin_activity( $a, $activities ) {
// ... but allow admin to see his activities!
if ( is_site_admin() )
return $activities;
foreach ( $activities->activities as $key => $activity ) {
// ID's to exclude, separated by commas. ID 1 is always the superadmin
if ( $activity->user_id == 1 ) {
unset( $activities->activities[$key] );
$activities->activity_count = $activities->activity_count-1;
$activities->total_activity_count = $activities->total_activity_count-1;
$activities->pag_num = $activities->pag_num -1;
}
}
// Renumber the array keys to account for missing items
$activities_new = array_values( $activities->activities );
$activities->activities = $activities_new;
return $activities;
}
add_action( 'bp_has_activities', 'bpfr_hide_admin_activity', 10, 2 );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment