Make WordPress Core


Ignore:
Timestamp:
01/06/2022 06:09:54 PM (3 years ago)
Author:
desrosj
Message:

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

Location:
branches/5.4
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/5.4

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

    r47122 r52469  
    528528            // The sibling must both have compatible operator to share its alias.
    529529            if ( in_array( strtoupper( $sibling['operator'] ), $compatible_operators ) ) {
    530                 $alias = $sibling['alias'];
     530                $alias = preg_replace( '/\W/', '_', $sibling['alias'] );
    531531                break;
    532532            }
     
    557557        }
    558558
    559         $query['terms'] = array_unique( (array) $query['terms'] );
     559        if ( 'slug' === $query['field'] || 'name' === $query['field'] ) {
     560            $query['terms'] = array_unique( (array) $query['terms'] );
     561        } else {
     562            $query['terms'] = wp_parse_id_list( $query['terms'] );
     563        }
    560564
    561565        if ( is_taxonomy_hierarchical( $query['taxonomy'] ) && $query['include_children'] ) {
Note: See TracChangeset for help on using the changeset viewer.