Skip to content

Instantly share code, notes, and snippets.

@KaineLabs
Created January 16, 2023 04:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save KaineLabs/00cb27705d7f5813bc15e839328c4c7d to your computer and use it in GitHub Desktop.
Save KaineLabs/00cb27705d7f5813bc15e839328c4c7d to your computer and use it in GitHub Desktop.
Youzify - BuddyPress Show Hidden Groups for Joined Members.
<?php
/**
* Youzify - BuddyPress Show Hidden Groups for Joined Members.
*/
function yzc_show_hidden_groups_for_members( $loop ) {
if ( ! is_user_logged_in() ) {
return $loop;
}
$loop['show_hidden'] = true;
if ( is_super_admin()) {
return $loop;
}
if ( bp_is_groups_directory() ) {
$hidden_groups = groups_get_groups( array( 'status' => array( 'hidden' ), 'show_hidden' => true, 'fields' => 'ids', 'per_page' => -1 ) );
if ( $hidden_groups['total'] > 0 ) {
$args = array(
'user_id' => bp_loggedin_user_id(),
'status' => array( 'hidden' ),
'show_hidden' => true,
'per_page' => -1,
'fields' => 'ids',
);
$user_groups = groups_get_groups( $args );
if ( $user_groups['total'] > 0 ) {
foreach ($hidden_groups['groups'] as $key => $group_id ) {
if ( in_array( $group_id, $user_groups['groups'] )) {
unset( $hidden_groups['groups'][ $key ] );
}
}
}
if ( ! empty($hidden_groups['groups'])) {
$loop['exclude'] = $hidden_groups['groups'];
}
}
}
return $loop;
}
add_filter( 'bp_after_has_groups_parse_args', 'yzc_show_hidden_groups_for_members' );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment