Make WordPress Core


Ignore:
Timestamp:
10/12/2023 02:59:28 PM (3 years ago)
Author:
davidbaumwald
Message:

Grouped backports to the 5.0 branch.

  • Comments: Prevent users who can not see a post from seeing comments on it.
  • Shortcodes: Restrict media shortcode ajax to certain type.
  • REST API: Ensure no-cache headers are sent when methods are overridden.
  • REST API: Limit search_columns for users without list_users.
  • Prevent unintended behavior when certain objects are unserialized.

Merges [56833], [56834], [56835], [56836], and [56838] to the 5.0 branch.
Props xknown, jorbin, joehoyle, timothyblynjacobs, peterwilsoncc, ehtis, tykoted, antpb, rmccue.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/5.0/src/wp-admin/includes/class-wp-list-table.php

    r41161 r56871  
    623623        $pending_phrase = sprintf( _n( '%s pending comment', '%s pending comments', $pending_comments ), $pending_comments_number );
    624624
    625         // No comments at all.
     625        $post_object   = get_post( $post_id );
     626        $edit_post_cap = $post_object ? 'edit_post' : 'edit_posts';
     627        if (
     628            current_user_can( $edit_post_cap, $post_id ) ||
     629            (
     630                empty( $post_object->post_password ) &&
     631                current_user_can( 'read_post', $post_id )
     632            )
     633        ) {
     634            // The user has access to the post and thus can see comments
     635        } else {
     636            return false;
     637        }
     638
    626639        if ( ! $approved_comments && ! $pending_comments ) {
    627640            printf( '<span aria-hidden="true">&#8212;</span><span class="screen-reader-text">%s</span>',
Note: See TracChangeset for help on using the changeset viewer.