Make WordPress Core


Ignore:
Timestamp:
01/06/2022 06:14:56 PM (2 years ago)
Author:
desrosj
Message:

Grouped backports to the 4.8 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.8 branch.
Props vortfu, dd32, ehtis, zieladam, whyisjake, xknown, peterwilsoncc, desrosj, iandunn.

Location:
branches/4.8
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/4.8

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

    r39662 r52475  
    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.