Alert: This function’s access is marked private. This means it is not intended for use by plugin or theme developers, only in other core functions. It is listed here for completeness.
WP_Posts_List_Table::_page_rows() WordPress Method
The WP_Posts_List_Table::_page_rows() method is used to retrieve a list of posts for the current page. This method is used by the WP_Posts_List_Table class to generate the table of posts displayed on the Posts page in the WordPress admin.
WP_Posts_List_Table::_page_rows( array $children_pages, int $count, int $parent_page, int $level, int $pagenum, int $per_page, array $to_display ) #
Given a top level page ID, display the nested hierarchy of sub-pages together with paging support
Parameters
- $children_pages
(array)(Required)
- $count
(int)(Required)
- $parent_page
(int)(Required)
- $level
(int)(Required)
- $pagenum
(int)(Required)
- $per_page
(int)(Required)
- $to_display
(array)(Required)List of pages to be displayed. Passed by reference.
Source
File: wp-admin/includes/class-wp-posts-list-table.php
private function _page_rows( &$children_pages, &$count, $parent_page, $level, $pagenum, $per_page, &$to_display ) { if ( ! isset( $children_pages[ $parent_page ] ) ) { return; } $start = ( $pagenum - 1 ) * $per_page; $end = $start + $per_page; foreach ( $children_pages[ $parent_page ] as $page ) { if ( $count >= $end ) { break; } // If the page starts in a subtree, print the parents. if ( $count === $start && $page->post_parent > 0 ) { $my_parents = array(); $my_parent = $page->post_parent; while ( $my_parent ) { // Get the ID from the list or the attribute if my_parent is an object. $parent_id = $my_parent; if ( is_object( $my_parent ) ) { $parent_id = $my_parent->ID; } $my_parent = get_post( $parent_id ); $my_parents[] = $my_parent; if ( ! $my_parent->post_parent ) { break; } $my_parent = $my_parent->post_parent; } $num_parents = count( $my_parents ); while ( $my_parent = array_pop( $my_parents ) ) { $to_display[ $my_parent->ID ] = $level - $num_parents; $num_parents--; } } if ( $count >= $start ) { $to_display[ $page->ID ] = $level; } $count++; $this->_page_rows( $children_pages, $count, $page->ID, $level + 1, $pagenum, $per_page, $to_display ); } unset( $children_pages[ $parent_page ] ); // Required in order to keep track of orphans. }
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
Version | Description |
---|---|
4.2.0 | Added the $to_display parameter. |
3.1.0 | Introduced. |