From b51dba4db39c3eed14dcb291ced420db7ce01be6 Mon Sep 17 00:00:00 2001 From: nikitasinelnikov Date: Thu, 12 Dec 2019 14:22:14 +0200 Subject: [PATCH] - fixed visible user roles when directory settings is selected and user can see only selected roles by capabilities; --- includes/core/class-member-directory.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/includes/core/class-member-directory.php b/includes/core/class-member-directory.php index 9c051a3a..9affc2b3 100644 --- a/includes/core/class-member-directory.php +++ b/includes/core/class-member-directory.php @@ -991,7 +991,12 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) { // add roles to appear in directory if ( ! empty( $directory_data['roles'] ) ) { //since WP4.4 use 'role__in' argument - $this->query_args['role__in'] = maybe_unserialize( $directory_data['roles'] ); + if ( ! empty( $this->query_args['role__in'] ) ) { + $this->query_args['role__in'] = is_array( $this->query_args['role__in'] ) ? $this->query_args['role__in'] : array( $this->query_args['role__in'] ); + $this->query_args['role__in'] = array_intersect( $this->query_args['role__in'], maybe_unserialize( $directory_data['roles'] ) ); + } else { + $this->query_args['role__in'] = maybe_unserialize( $directory_data['roles'] ); + } } }