Title: WP_Posts_List_Table::_display_rows
Published: April 25, 2014
Last modified: February 24, 2026

---

# WP_Posts_List_Table::_display_rows( array $posts, int $level )

## In this article

 * [Parameters](https://developer.wordpress.org/reference/classes/wp_posts_list_table/_display_rows/?output_format=md#parameters)
 * [Source](https://developer.wordpress.org/reference/classes/wp_posts_list_table/_display_rows/?output_format=md#source)
 * [Related](https://developer.wordpress.org/reference/classes/wp_posts_list_table/_display_rows/?output_format=md#related)

[ Back to top](https://developer.wordpress.org/reference/classes/wp_posts_list_table/_display_rows/?output_format=md#wp--skip-link--target)

This function’s access is marked private. This means it is not intended for use 
by plugin or theme developers, only by core. It is listed here for completeness.

## 󠀁[Parameters](https://developer.wordpress.org/reference/classes/wp_posts_list_table/_display_rows/?output_format=md#parameters)󠁿

 `$posts`arrayrequired

`$level`intrequired

## 󠀁[Source](https://developer.wordpress.org/reference/classes/wp_posts_list_table/_display_rows/?output_format=md#source)󠁿

    ```php
    private function _display_rows( $posts, $level = 0 ) {
    	$post_type = $this->screen->post_type;

    	// Create array of post IDs.
    	$post_ids = array();

    	foreach ( $posts as $a_post ) {
    		$post_ids[] = $a_post->ID;
    	}

    	if ( post_type_supports( $post_type, 'comments' ) ) {
    		$this->comment_pending_count = get_pending_comments_num( $post_ids );
    	}
    	update_post_author_caches( $posts );

    	foreach ( $posts as $post ) {
    		$this->single_row( $post, $level );
    	}
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-admin/includes/class-wp-posts-list-table.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/6.9.4/src/wp-admin/includes/class-wp-posts-list-table.php#L822)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/6.9.4/src/wp-admin/includes/class-wp-posts-list-table.php#L822-L840)

## 󠀁[Related](https://developer.wordpress.org/reference/classes/wp_posts_list_table/_display_rows/?output_format=md#related)󠁿

| Uses | Description | 
| [update_post_author_caches()](https://developer.wordpress.org/reference/functions/update_post_author_caches/)`wp-includes/post.php` |

Updates post author user caches for a list of post objects.

  | 
| [WP_Posts_List_Table::single_row()](https://developer.wordpress.org/reference/classes/wp_posts_list_table/single_row/)`wp-admin/includes/class-wp-posts-list-table.php` |  | 
| [get_pending_comments_num()](https://developer.wordpress.org/reference/functions/get_pending_comments_num/)`wp-admin/includes/comment.php` |

Gets the number of pending comments on a post or posts.

  | 
| [post_type_supports()](https://developer.wordpress.org/reference/functions/post_type_supports/)`wp-includes/post.php` |

Checks a post type’s support for a given feature.

  |

| Used by | Description | 
| [WP_Posts_List_Table::display_rows()](https://developer.wordpress.org/reference/classes/wp_posts_list_table/display_rows/)`wp-admin/includes/class-wp-posts-list-table.php` |

Generates the list table rows.

  |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fclasses%2Fwp_posts_list_table%2F_display_rows%2F)
before being able to contribute a note or feedback.