WordPress.org

Make WordPress Core

Ticket #16706: 16706.split.diff

File 16706.split.diff, 802 bytes (added by scribu, 11 years ago)

Use 'AND' operator when splitting query vars

  • wp-includes/query.php

     
    16661666
    16671667                                $term = $q[$t->query_var];
    16681668
    1669                                 if ( strpos($term, '+') !== false ) {
    1670                                         $terms = preg_split( '/[+]+/', $term );
    1671                                         foreach ( $terms as $term ) {
    1672                                                 $tax_query[] = array_merge( $tax_query_defaults, array(
    1673                                                         'terms' => array( $term )
    1674                                                 ) );
    1675                                         }
     1669                                if ( preg_match( '/[+ ]+/', $term ) ) {
     1670                                        $tax_query[] = array_merge( $tax_query_defaults, array(
     1671                                                'terms' => preg_split( '/[+ ]+/', $term ),
     1672                                                'operator' => 'AND'
     1673                                        ) );
    16761674                                } else {
    16771675                                        $tax_query[] = array_merge( $tax_query_defaults, array(
    16781676                                                'terms' => preg_split( '/[,]+/', $term )