我正在尝试使用wp_list_table在wordpress中创建自定义表。我正在尝试显示ID,用户名和用户邮件。我已经将自定义表创建为插件。我的问题是表已创建但无法获取数据。这是我的代码。为什么有2个表显示。请帮帮我
<?php
/*
Plugin Name: Custom Tables
*/
?>
<?php
if( ! class_exists( 'WP_List_Table' ) ) {
require_once( ABSPATH . 'wp-admin/includes/class-wp-list-table.php' );
class My_List_Table extends WP_List_Table {
function getdata($user_id){
$args= array(
'user_id' =>'ID',
'role' =>'',
'orderby' =>'login',
'fields' => 'ID','user_login','user_email');
$data = get_users($args);
}
function get_columns(){
$columns = array(
'ID' => 'Case ID',
'user_login' => 'Patient Name',
'user_email' => 'Patient Email'
);
return $columns;
}
function prepare_items() {
$columns = $this->get_columns();
$hidden = array();
$sortable = array();
$this->_column_headers = array($columns, $hidden, $sortable);
$this->items = $this->example_data;;
}
function column_default( $item, $column_name ) {
switch( $column_name ) {
case 'ID':
case 'user_login':
case 'user_email':
return $item[ $column_name ];
default:
return print_r( $item, true ) ; //Show the whole array for troubleshooting purposes
}
}
}
// $myListTable = new My__List_Table();
function my_render_list_page(){
$myListTable = new My_List_Table();
echo '<div class="wrap"><h2>My List Table Test</h2>';
$myListTable->prepare_items();
$myListTable->display();
echo '</div>';
}
function my_add_menu_items(){
add_menu_page( 'My Plugin List Table', 'My List Table Example', 'activate_plugins', 'my_list_test', 'my_render_list_page' );
}
add_action( 'admin_menu', 'my_add_menu_items' );
}
?>
答案 0 :(得分:0)
以下是您可能要关注的example。还有一个plugin。查看this行,它会给你一个更好的主意,函数table_data()准备你的数据。
可能是您想要使用它并进行修改。我在我的插件中多次使用过它。 List Table Example