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, 20 months 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