WordPress.org

Make WordPress Core

Ticket #11381: 11381.2.diff

File 11381.2.diff, 1.6 KB (added by wonderboymusic, 4 years ago)
  • src/wp-admin/includes/class-wp-media-list-table.php

     
    88 * @access private
    99 */
    1010class WP_Media_List_Table extends WP_List_Table {
     11        /**
     12         * Store the pending comment count for each post
     13         *
     14         * @access public
     15         * @since 4.4.0
     16         * @var array
     17         */
     18        public $pending_count = array();
    1119
    1220        private $detached;
    1321
     
    149157
    150158                        /** This action is documented in wp-admin/includes/class-wp-posts-list-table.php */
    151159                        do_action( 'restrict_manage_posts', $this->screen->post_type );
    152                        
     160
    153161                        submit_button( __( 'Filter' ), 'button', 'filter_action', false, array( 'id' => 'post-query-submit' ) );
    154162                }
    155163
     
    481489        public function column_comments( $post ) {
    482490                echo '<div class="post-com-count-wrapper">';
    483491
    484                 $pending_comments = get_pending_comments_num( $post->ID );
     492                if ( isset( $this->pending_count[ $post->ID ] ) ) {
     493                        $pending_comments = $this->pending_count[ $post->ID ];
     494                } else {
     495                        $pending_comments = get_pending_comments_num( $post->ID );
     496                }
     497
    485498                $this->comments_bubble( $post->ID, $pending_comments );
    486499
    487500                echo '</div>';
     
    548561         * @global WP_Post $post
    549562         */
    550563        public function display_rows() {
    551                 global $post;
     564                global $post, $wp_query;
    552565
     566                $post_ids = wp_list_pluck( $wp_query->posts, 'ID' );
     567                reset( $wp_query->posts );
     568
     569                $this->pending_count = get_pending_comments_num( $post_ids );
     570
    553571                add_filter( 'the_title','esc_html' );
    554572
    555573                while ( have_posts() ) : the_post();