class-wp-list-table-compat.php
1.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
/**
* Helper functions for displaying a list of items in an ajaxified HTML table.
*
* @package WordPress
* @subpackage List_Table
* @since 4.7.0
*/
/**
* Helper class to be used only by back compat functions.
*
* @since 3.1.0
*/
class _WP_List_Table_Compat extends WP_List_Table {
public $_screen;
public $_columns;
/**
* Constructor.
*
* @since 3.1.0
*
* @param string|WP_Screen $screen The screen hook name or screen object.
* @param string[] $columns An array of columns with column IDs as the keys
* and translated column names as the values.
*/
public function __construct( $screen, $columns = array() ) {
if ( is_string( $screen ) ) {
$screen = convert_to_screen( $screen );
}
$this->_screen = $screen;
if ( ! empty( $columns ) ) {
$this->_columns = $columns;
add_filter( 'manage_' . $screen->id . '_columns', array( $this, 'get_columns' ), 0 );
}
}
/**
* Gets a list of all, hidden, and sortable columns.
*
* @since 3.1.0
*
* @return array
*/
protected function get_column_info() {
$columns = get_column_headers( $this->_screen );
$hidden = get_hidden_columns( $this->_screen );
$sortable = array();
$primary = $this->get_default_primary_column_name();
return array( $columns, $hidden, $sortable, $primary );
}
/**
* Gets a list of columns.
*
* @since 3.1.0
*
* @return array
*/
public function get_columns() {
return $this->_columns;
}
}