WP_List_Table::__construct( array|string $args = array() )
Constructor.
Contents
Description
The child class should call this constructor from its own constructor to override the default $args.
Parameters
-
$args
array|string Optional -
Array or string of arguments.
plural
stringPlural value used for labels and the objects being listed.
This affects things such as CSS class-names and nonces used in the list table, e.g.'posts'
.singular
stringSingular label for an object being listed, e.g.'post'
.
Default emptyajax
boolWhether the list table supports Ajax. This includes loading and sorting data, for example. If true, the class will call the _js_vars() method in the footer to provide variables to any scripts handling Ajax events. Default false.screen
stringString containing the hook name used to determine the current screen. If left null, the current screen will be automatically set.
Default null.
Default:
array()
More Information
This sets default arguments and filters. Developers should override this, calling the parent constructor to provide values for singular and plural labels, as well as whether the class supports AJAX.
Source
File: wp-admin/includes/class-wp-list-table.php
.
View all references
public function __construct( $args = array() ) {
$args = wp_parse_args(
$args,
array(
'plural' => '',
'singular' => '',
'ajax' => false,
'screen' => null,
)
);
$this->screen = convert_to_screen( $args['screen'] );
add_filter( "manage_{$this->screen->id}_columns", array( $this, 'get_columns' ), 0 );
if ( ! $args['plural'] ) {
$args['plural'] = $this->screen->base;
}
$args['plural'] = sanitize_key( $args['plural'] );
$args['singular'] = sanitize_key( $args['singular'] );
$this->_args = $args;
if ( $args['ajax'] ) {
// wp_enqueue_script( 'list-table' );
add_action( 'admin_footer', array( $this, '_js_vars' ) );
}
if ( empty( $this->modes ) ) {
$this->modes = array(
'list' => __( 'Compact view' ),
'excerpt' => __( 'Extended view' ),
);
}
}
Changelog
Version | Description |
---|---|
3.1.0 | Introduced. |