WordPress.org

Make WordPress Core

Ticket #20604: tax-query-no-results-on-or.diff

File tax-query-no-results-on-or.diff, 793 bytes (added by wonderboymusic, 6 years ago)
  • wp-includes/taxonomy.php

     
    658658                $join = '';
    659659                $where = array();
    660660                $i = 0;
     661                $count = count( $this->queries );
    661662
    662                 foreach ( $this->queries as $query ) {
     663                foreach ( $this->queries as $index => $query ) {
    663664                        $this->clean_query( $query );
    664665
    665666                        if ( is_wp_error( $query ) ) {
     
    671672                        if ( 'IN' == $operator ) {
    672673
    673674                                if ( empty( $terms ) ) {
    674                                         if ( 'OR' == $this->relation )
     675                                        if ( 'OR' == $this->relation ) {
     676                                                if ( $index + 1 === $count && empty( $where ) )
     677                                                        return self::$no_results;
    675678                                                continue;
    676                                         else
     679                                        } else
    677680                                                return self::$no_results;
    678681                                }
    679682