Make WordPress Core


Ignore:
Timestamp:
10/17/2022 05:39:34 PM (4 years ago)
Author:
audrasjb
Message:

Grouped backports to the 5.9 branch.

  • Editor: Bump @wordpress packages for the 5.9 branch,
  • Media: Refactor search by filename within the admin,
  • REST API: Lockdown post parameter of the terms endpoint,
  • Customize: Escape blogname option in underscores templates,
  • Query: Validate relation in WP_Date_Query,
  • Users: Revert use of shared objects for current user,
  • Posts, Post types: Apply KSES to post-by-email content,
  • General: Validate host on "Are you sure?" screen,
  • Posts, Post types: Remove emails from post-by-email logs,
  • Pings/trackbacks: Apply KSES to all trackbacks,
  • Mail: Reset PHPMailer properties between use,
  • Comments: Apply kses when editing comments,
  • Widgets: Escape RSS error messages for display.

Merges [54521-54530] to the 5.9 branch.
Props audrasjb, costdev, cu121, dd32, davidbaumwald, ehtis, johnbillion, johnjamesjacoby, martinkrcho, matveb, oztaser, paulkevan, peterwilsoncc, ravipatel, SergeyBiryukov, talldanwp, timothyblynjacobs, tykoted, voldemortensen, vortfu, xknown.

Location:
branches/5.9
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/5.9

  • branches/5.9/tests/phpunit/tests/query/search.php

    r52389 r54545  
    455455
    456456                add_post_meta( $attachment, '_wp_attached_file', 'some-image1.png', true );
    457                 add_filter( 'posts_clauses', '_filter_query_attachment_filenames' );
     457                add_filter( 'wp_allow_query_attachment_by_filename', '__return_true' );
    458458
    459459                // Pass post_type a string value.
     
    485485
    486486                add_post_meta( $attachment, '_wp_attached_file', 'some-image2.png', true );
    487                 add_filter( 'posts_clauses', '_filter_query_attachment_filenames' );
     487                add_filter( 'wp_allow_query_attachment_by_filename', '__return_true' );
    488488
    489489                // Pass post_type an array value.
     
    544544                add_post_meta( $attachment, '_wp_attached_file', 'some-image4.png', true );
    545545                add_post_meta( $attachment, '_test_meta_key', 'value', true );
    546                 add_filter( 'posts_clauses', '_filter_query_attachment_filenames' );
     546                add_filter( 'wp_allow_query_attachment_by_filename', '__return_true' );
    547547
    548548                // Pass post_type a string value.
     
    584584
    585585                add_post_meta( $attachment, '_wp_attached_file', 'some-image5.png', true );
    586                 add_filter( 'posts_clauses', '_filter_query_attachment_filenames' );
     586                add_filter( 'wp_allow_query_attachment_by_filename', '__return_true' );
    587587
    588588                // Pass post_type a string value.
     
    609609         * @ticket 22744
    610610         */
    611         public function test_filter_query_attachment_filenames_unhooks_itself() {
    612                 add_filter( 'posts_clauses', '_filter_query_attachment_filenames' );
    613 
    614                 apply_filters(
    615                         'posts_clauses',
    616                         array(
    617                                 'where'    => '',
    618                                 'groupby'  => '',
    619                                 'join'     => '',
    620                                 'orderby'  => '',
    621                                 'distinct' => '',
    622                                 'fields'   => '',
    623                                 'limit'    => '',
    624                         )
    625                 );
    626 
    627                 $result = has_filter( 'posts_clauses', '_filter_query_attachment_filenames' );
    628 
    629                 $this->assertFalse( $result );
     611        public function test_wp_query_removes_filter_wp_allow_query_attachment_by_filename() {
     612                $attachment = self::factory()->post->create(
     613                        array(
     614                                'post_type'    => 'attachment',
     615                                'post_status'  => 'publish',
     616                                'post_title'   => 'bar foo',
     617                                'post_content' => 'foo bar',
     618                                'post_excerpt' => 'This post has foo',
     619                        )
     620                );
     621
     622                add_post_meta( $attachment, '_wp_attached_file', 'some-image1.png', true );
     623                add_filter( 'wp_allow_query_attachment_by_filename', '__return_true' );
     624
     625                $q = new WP_Query(
     626                        array(
     627                                's'           => 'image1',
     628                                'fields'      => 'ids',
     629                                'post_type'   => 'attachment',
     630                                'post_status' => 'inherit',
     631                        )
     632                );
     633
     634                $this->assertSame( array( $attachment ), $q->posts );
     635
     636                /*
     637                 * WP_Query should have removed the wp_allow_query_attachment_by_filename filter
     638                 * and thus not match the attachment created above
     639                 */
     640                $q->get_posts();
     641                $this->assertEmpty( $q->posts );
    630642        }
    631643
Note: See TracChangeset for help on using the changeset viewer.