Skip to:
Content

BuddyPress.org


Ignore:
Timestamp:
03/30/2015 06:41:44 PM (10 years ago)
Author:
boonebgorges
Message:

Enforce no_results when getting a 0=1 result from the member type tax query.

When passing a 'member_type' to BP_User_Query and no users belong to the
member type, the WP_Tax_Query transformation will return a '0 = 1' clause to
indicate that no results were found. We should respect this result, so that no
members are returned for this kind of query.

Fixes #6334.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/bp-core/classes/class-bp-user-query.php

    r9661 r9662  
    461461                if ( preg_match( '/' . $wpdb->term_relationships . '\.term_taxonomy_id IN \([0-9, ]+\)/', $member_type_sql_clauses['where'], $matches ) ) {
    462462                    $sql['where']['member_type'] = "u.{$this->uid_name} IN ( SELECT object_id FROM $wpdb->term_relationships WHERE {$matches[0]} )";
     463                } elseif ( false !== strpos( $member_type_sql_clauses['where'], '0 = 1' ) ) {
     464                    $sql['where']['member_type'] = $this->no_results['where'];
    463465                }
    464466            }
Note: See TracChangeset for help on using the changeset viewer.