From c28e0211f13e05a7b9daaf1207493664001ace11 Mon Sep 17 00:00:00 2001 From: Nikita Sinelnikov Date: Wed, 25 Aug 2021 13:31:38 +0300 Subject: [PATCH] - fixed restriction logic; --- includes/admin/core/class-admin-metabox.php | 4 ++-- includes/admin/templates/access/restrict_content.php | 2 +- includes/core/class-access.php | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/includes/admin/core/class-admin-metabox.php b/includes/admin/core/class-admin-metabox.php index 01b73dbb..dd69ad14 100644 --- a/includes/admin/core/class-admin-metabox.php +++ b/includes/admin/core/class-admin-metabox.php @@ -431,7 +431,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Metabox' ) ) { '0' => __( 'Show access restricted message', 'ultimate-member' ), '1' => __( 'Redirect user', 'ultimate-member' ), ), - 'conditional' => array( '_um_access_hide_from_queries', '=', '0' ), + 'conditional' => UM()->options()->get( 'disable_restriction_pre_queries' ) ? '' : array( '_um_access_hide_from_queries', '=', '0' ), ), array( 'id' => '_um_restrict_by_custom_message', @@ -583,7 +583,7 @@ if ( ! class_exists( 'um\admin\core\Admin_Metabox' ) ) { '0' => __( 'Show access restricted message', 'ultimate-member' ), '1' => __( 'Redirect user', 'ultimate-member' ), ), - 'conditional' => array( '_um_access_hide_from_queries', '=', '0' ), + 'conditional' => UM()->options()->get( 'disable_restriction_pre_queries' ) ? '' : array( '_um_access_hide_from_queries', '=', '0' ), ), array( 'id' => '_um_restrict_by_custom_message', diff --git a/includes/admin/templates/access/restrict_content.php b/includes/admin/templates/access/restrict_content.php index 42bd1b46..44a37b0d 100644 --- a/includes/admin/templates/access/restrict_content.php +++ b/includes/admin/templates/access/restrict_content.php @@ -96,7 +96,7 @@ if ( ! defined( 'ABSPATH' ) ) { '0' => __( 'Show access restricted message', 'ultimate-member' ), '1' => __( 'Redirect user', 'ultimate-member' ), ), - 'conditional' => array( '_um_access_hide_from_queries', '=', '0' ), + 'conditional' => UM()->options()->get( 'disable_restriction_pre_queries' ) ? '' : array( '_um_access_hide_from_queries', '=', '0' ), ), array( 'id' => '_um_restrict_by_custom_message', diff --git a/includes/core/class-access.php b/includes/core/class-access.php index 477902f8..92837eb6 100644 --- a/includes/core/class-access.php +++ b/includes/core/class-access.php @@ -1100,7 +1100,7 @@ if ( ! class_exists( 'um\core\Access' ) ) { continue; } else { $restriction_settings = $this->get_post_privacy_settings( $menu_item->object_id ); - if ( empty( $restriction_settings['_um_access_hide_from_queries'] ) ) { + if ( UM()->options()->get( 'disable_restriction_pre_queries' ) || empty( $restriction_settings['_um_access_hide_from_queries'] ) ) { $filtered_items[] = $menu_item; continue; } @@ -1241,7 +1241,7 @@ if ( ! class_exists( 'um\core\Access' ) ) { if ( is_object( $query ) && is_a( $query, '\WP_Query' ) && ( $query->is_main_query() || ! empty( $query->query_vars['um_main_query'] ) ) ) { if ( $is_singular ) { - if ( $this->is_restricted( $posts[0]->ID ) ) { + if ( ! UM()->options()->get( 'disable_restriction_pre_queries' ) && $this->is_restricted( $posts[0]->ID ) ) { $content_restriction = $this->get_post_privacy_settings( $posts[0]->ID ); if ( ! empty( $content_restriction['_um_access_hide_from_queries'] ) ) { unset( $posts[0] ); @@ -1276,7 +1276,7 @@ if ( ! class_exists( 'um\core\Access' ) ) { } else { if ( $is_singular ) { if ( ! isset( $restriction['_um_noaccess_action'] ) || '0' == $restriction['_um_noaccess_action'] ) { - if ( empty( $restriction['_um_access_hide_from_queries'] ) ) { + if ( UM()->options()->get( 'disable_restriction_pre_queries' ) || empty( $restriction['_um_access_hide_from_queries'] ) ) { /** * UM hook * @@ -1318,7 +1318,7 @@ if ( ! class_exists( 'um\core\Access' ) ) { } } } else { - if ( empty( $restriction['_um_access_hide_from_queries'] ) ) { + if ( UM()->options()->get( 'disable_restriction_pre_queries' ) || empty( $restriction['_um_access_hide_from_queries'] ) ) { $filtered_posts[] = $post; continue; }