我正在使用Wordpress,在创建从wp_list_table继承的类之后,在屏幕选项中显示的复选框有问题。
如您所见,该ID已被选中但未显示,因此应取消选中该ID,因为默认情况下它是隐藏的。
该表以add_submenu_page
显示,因此没有任何干扰。代码:
$users = add_submenu_page(
'parentMenu', // Parent Slug
'Administración de Usuarios', // Page Title
'Listado de Usuarios', // Menu Title
self::$classCustomCapability, // Capability
'users', // Menu Slug
array($this, 'users') // Function
);
add_action( "load-$users", array( 'userTable', 'custom_ScreenOptions' ) );
类userTable
和函数custom_ScreenOptions
的代码为:
static function custom_ScreenOptions( $opt ) {
add_screen_option('per_page', array(
'label' => __('Becas por página'),
'default' => 10,
'option' => 'usr_por_pagina'
));
$wp_users_table = new userTable();
}
此外,您可能还需要列函数:
function get_columns() {
return array(
'ID'=> __('ID'),
'nombreUsr'=> __('Nombre'),
'nrPersonas'=> __('Inscritos'),
'status'=> __('Estado'),
);
}
function get_hidden_columns() {
return array (
'ID'=> __('ID'),
);
}
function get_sortable_columns() {
return array(
'nombreUsr'=> array('post_title', true),
'status'=> array('meta_value', true)
);
}
function get_column_info() {
if ( !(isset($this->_column_headers)) ) {
$this->_column_headers = array(
$this->get_columns(), // Columnas
$this->get_hidden_columns(), // Columnas ocultas
$this->get_sortable_columns(), // Sorteable
'nombreUsr' // Primary
);
}
return $this->_column_headers;
}
那么我如何才能使未隐藏的复选框处于选中状态,而隐藏时则处于未选中状态?
此外,不知道是否可以问两个问题,但是他们应该“一起去”,第二个是:
在此页面中,屏幕选项未保存在数据库中,不知道为什么,但是在另一页中与该页面完全相同,屏幕选项会保存,但表不会对保存的值做出反应:
它确实保存了未选中状态,但是表仍然显示隐藏的列。
我感谢任何帮助!