我有一个包含一些数据的自定义数据库表。目前,我只想在WordPress管理区域中显示表中包含的值的概述。
add_filter(\'manage_mycustom_posts_columns\', array($this, \'xxx_columns_head\'));
add_action(\'manage_mycustom_posts_custom_column\', array($this, \'xxx_columns_content\'));
public function xxx_columns_content($column_name) {
global $post;
$post_ID = $post->ID;
$values = $this->xxxx_get_cpt_data($post_ID);
//print_r($values);
}
public function xxxx_get_cpt_data($post_ID) {
$cpt_values = get_post_custom($post_ID);
if ($cpt_values) {
return $cpt_values;
}
}
我意识到我不能使用这个功能get_post_custom()
以及$post_ID
在我的自定义表中未使用。那么我怎样才能做一个函数呢xxx_get_post_custom(...)
以便我可以填充概览值?[编辑]
public function xxxx_get_cpt_data() {
global $wpdb;
$sql = "SELECT * FROM custom_table";
$cpt_values = $wpdb->get_results($sql);
//print_r($cpt_values);
if ($cpt_values) {
return $cpt_values->column_name;
}else {
return \' \';
}
}
对于列内容:public function xxxx_columns_content($column_name) {
$values = $this->xxxx_get_cpt_data();
print_r($values);//
foreach ($values as $value) {
//print_r($value[0]);
$value = $value[0];
if ($column_name == \'name\') {
$name = isset($value[\'name\']) ? esc_attr($value[\'name\'][0]) : \'\';
echo $name;
}
.....other columns content
}
}
}
但现在我在一行中获得了每列的所有数据库表内容。