Make WordPress Core


Ignore:
Timestamp:
01/06/2022 06:16:25 PM (5 years ago)
Author:
desrosj
Message:

Grouped backports to the 4.6 branch.

  • Query: Improve sanitization within WP_Tax_Query.
  • Query: Improve sanitization within WP_Meta_Query.
  • Upgrade/Install: Avoid using unserialize() unnecessarily.
  • Formatting: Correctly encode ASCII characters in post slugs.

Merges [52454-52457] to the 4.6 branch.
Props vortfu, dd32, ehtis, zieladam, whyisjake, xknown, peterwilsoncc, desrosj, iandunn.

Location:
branches/4.6
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/4.6

  • branches/4.6/src/wp-includes/class-wp-tax-query.php

    r38079 r52477  
    544544                        // The sibling must both have compatible operator to share its alias.
    545545                        if ( in_array( strtoupper( $sibling['operator'] ), $compatible_operators ) ) {
    546                                 $alias = $sibling['alias'];
     546                                $alias = preg_replace( '/\W/', '_', $sibling['alias'] );
    547547                                break;
    548548                        }
     
    574574                }
    575575
    576                 $query['terms'] = array_unique( (array) $query['terms'] );
     576                if ( 'slug' === $query['field'] || 'name' === $query['field'] ) {
     577                        $query['terms'] = array_unique( (array) $query['terms'] );
     578                } else {
     579                        $query['terms'] = wp_parse_id_list( $query['terms'] );
     580                }
    577581
    578582                if ( is_taxonomy_hierarchical( $query['taxonomy'] ) && $query['include_children'] ) {
Note: See TracChangeset for help on using the changeset viewer.