WP_Posts_List_Table::__construct()
Constructor.
Method of the class: WP_Posts_List_Table{}
No Hooks.
Return
null
. Nothing (null).
Usage
$WP_Posts_List_Table = new WP_Posts_List_Table(); $WP_Posts_List_Table->__construct( $args );
- $args(array)
- An associative array of arguments.
Default: array()
Notes
- See: WP_List_Table::__construct() for more information on default arguments.
- Global. WP_Post_Type. $post_type_object Global post type object.
- Global. wpdb. $wpdb WordPress database abstraction object.
Changelog
Since 3.1.0 | Introduced. |
WP_Posts_List_Table::__construct() WP Posts List Table:: construct code WP 6.7.1
public function __construct( $args = array() ) { global $post_type_object, $wpdb; parent::__construct( array( 'plural' => 'posts', 'screen' => isset( $args['screen'] ) ? $args['screen'] : null, ) ); $post_type = $this->screen->post_type; $post_type_object = get_post_type_object( $post_type ); $exclude_states = get_post_stati( array( 'show_in_admin_all_list' => false, ) ); $this->user_posts_count = (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT( 1 ) FROM $wpdb->posts WHERE post_type = %s AND post_status NOT IN ( '" . implode( "','", $exclude_states ) . "' ) AND post_author = %d", $post_type, get_current_user_id() ) ); if ( $this->user_posts_count && ! current_user_can( $post_type_object->cap->edit_others_posts ) && empty( $_REQUEST['post_status'] ) && empty( $_REQUEST['all_posts'] ) && empty( $_REQUEST['author'] ) && empty( $_REQUEST['show_sticky'] ) ) { $_GET['author'] = get_current_user_id(); } $sticky_posts = get_option( 'sticky_posts' ); if ( 'post' === $post_type && $sticky_posts ) { $sticky_posts = implode( ', ', array_map( 'absint', (array) $sticky_posts ) ); $this->sticky_posts_count = (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT( 1 ) FROM $wpdb->posts WHERE post_type = %s AND post_status NOT IN ('trash', 'auto-draft') AND ID IN ($sticky_posts)", $post_type ) ); } }