WordPress的后台有各种各样的表格。在开发WordPress插件或WordPress主题时,有时候我们也希望对这些表格进行改造,增加显示自己需要的数据,或者删除不必要的列。
该怎么办呢?WordPress 早就为我们准备好了!
比如,希望在用户列表中增加【生日】一列:
//增加一列
function custom_add_user_id_column($columns) {
$columns['birthday'] = '生日';
return $columns;
}
add_filter('manage_users_columns', 'custom_add_user_id_column');
//给增加的列合适的值
function custom_show_user_id_column_content($value, $column_name, $user_id) {
if ( 'birthday' == $column_name )
return '某年某月某日';
return $value;
}
add_filter('manage_users_custom_column', 'custom_show_user_id_column_content', 10, 3);
类似的,给文章列表增加一列:
// 是否 置顶 的表格值
function display_posts_stickiness( $column, $post_id ) {
if ($column == 'sticky'){
echo '<input type="checkbox" disabled', ( is_sticky( $post_id ) ? ' checked' : ''), '/>';
}
}
add_action( 'manage_posts_custom_column' , 'display_posts_stickiness', 10, 2 );
// 增加一列 置顶
function add_sticky_column( $columns ) {
return array_merge( $columns,
array( 'sticky' => __( 'Sticky', 'your_text_domain' ) ) );
}
add_filter( 'manage_posts_columns' , 'add_sticky_column' );
给用户增加列和给文章增加列,有一个细微的差别,文章用了 add_action,用户用了 add_filter。经过查看文档及源码,确实如此,也搞不清楚为什么会有这个差别…… 不过实践中,用户列表增加列使用 add_action 也是有效的……
除此之外,还有各种类似的函数:
manage_link_columns
manage_link_custom_column
manage_media_columns
manage_media_custom_column
manage_pages_columns
manage_pages_custom_column
manage_sites_columns
manage_sites_custom_column
manage_themes_columns
manage_themes_custom_column
manage_plugins_columns
manage_plugins_custom_column
manage_comments_columns
manage_comments_custom_column
manage_{$this->screen->id}_custom_column
manage_{$post->post_type}_posts_custom_column
manage_{$this->screen->taxonomy}_custom_column
manage_{$this->screen->id}_custom_column_js_template
总之,利用这些函数,想改造任何列表都是可以的。
-
WordPress函数:国际化 _n 翻译字符串,可以区分单数复数WordPress函数:国际化 _n 翻译字符串,可以区分单数复数
-
WordPress函数:_n_loop 在 pot 文件中注册字符串WordPress函数:_n_loop 在 pot 文件中注册字符串
-
WordPress函数:esc_html__ 转义HTML字符WordPress函数:esc_html__ 转义HTML字符
-
WordPress函数:esc_html_x 带上下文的转义翻译WordPress函数:esc_html_x 带上下文的转义翻译
-
WordPress函数:esc_attr__ 转义属性及翻译WordPress函数:esc_attr__ 转义属性及翻译
-
WP Multilang WordPress翻译插件WP Multilang插件的主要功能是提供多语言支持,使用户能够创建多语言版本的网站,满足不同语言用户的需求。
暂无评论,抢个沙发...