致力于打造一个优秀的建站资源共享学习平台!

爱站窝四川

修改后台文章管理列表

爱站窝查看全部>>

人气304

翻译自:http://wp.smashingmagazine.com/2013/12/05/modifying-admin-post-lists-in-wordpress/

你是否发现,当你新建一个自定义类型后,在管理,仅仅只显示文章标题和日期?但事实上文章还包含很多信息,比如作者、分类、评论等,本片文章就叫你如何修改的文章列表的信息。

首先请确定你知道本文要将什么,后台文章管理列表指的是你再后台点击“所有文章”“所有页面”之后出现的文章的列表表格。

创建一个自定义的文章类型(,我将使用wp3.8.1 twentyfourteen主题测试),在主题的functions.php文件插入以下的代码,关于如何创建一个文章类型,你也可以参考本站教程wordpress进阶教程(二):注册一个自定义的文章类型:

  1. add_action( 'init', 'bs_post_types' );
  2. function bs_post_types() {
  3.     $labels = array(
  4.         'name'                => __( 'Events', THEMENAME ),
  5.         'singular_name'       => __( 'Event', THEMENAME ),
  6.         'add_new'             => __( 'Add New', THEMENAME ),
  7.         'add_new_item'        => __( 'Add New Event', THEMENAME ),
  8.         'edit_item'           => __( 'Edit Event', THEMENAME ),
  9.         'new_item'            => __( 'New Event', THEMENAME ),
  10.         'all_items'           => __( 'All Event', THEMENAME ),
  11.         'view_item'           => __( 'View Event', THEMENAME ),
  12.         'search_items'        => __( 'Search Events', THEMENAME ),
  13.         'not_found'           => __( 'No events found', THEMENAME ),
  14.         'not_found_in_trash'  => __( 'No events found in Trash', THEMENAME ),
  15.         'menu_name'           => __( 'Events', THEMENAME ),
  16.     );
  17.     $supports = array( 'title', 'editor' );
  18.     $slug = get_theme_mod( 'event_permalink' );
  19.     $slug = ( empty( $slug ) ) ? 'event' : $slug;
  20.     $args = array(
  21.         'labels'              => $labels,
  22.         'public'              => true,
  23.         'publicly_queryable'  => true,
  24.         'show_ui'             => true,
  25.         'show_in_menu'        => true,
  26.         'query_var'           => true,
  27.         'rewrite'             => array( 'slug' => $slug ),
  28.         'capability_type'     => 'post',
  29.         'has_archive'         => true,
  30.         'hierarchical'        => false,
  31.         'menu_position'       => null,
  32.         'supports'            => $supports,
  33.     );
  34.     register_post_type( 'event', $args );
  35. }

添加代码之后,在后台发布一些文章,文章管理列表将如图:修改后台文章管理列表
给表格头部添加列

  1. add_filter('manage_event_posts_columns', 'bs_event_table_head');
  2. function bs_event_table_head( $defaults ) {
  3.     $defaults['event_date']  = 'Event Date';
  4.     $defaults['ticket_status']    = 'Ticket Status';
  5.     $defaults['venue']   = 'Venue';
  6.     $defaults['author'] = 'Added By';
  7.     return $defaults;
  8. }

注意:上面代码中我们使用了过滤器 manage_event_posts_columns,其中的event为上面创建的文章类型名。

如果你仅仅添加了上面的代码,你会发现,在后台的文章管理列表,仅仅是表格的头部出现了列的名称,但是没有具体的内容显示。

给列添加具体的显示内容

添加以下代码到functions.php中。

  1. add_action( 'manage_event_posts_custom_column', 'bs_event_table_content', 10, 2 );
  2. function bs_event_table_content( $column_name, $post_id ) {
  3.     if ($column_name == 'event_date') {
  4.         $event_date = get_post_meta( $post_id, '_bs_meta_event_date', true );
  5.             echo  date( _x( 'F d, Y', 'Event date format', 'textdomain' ), strtotime( $event_date ) );
  6.     }
  7.     if ($column_name == 'ticket_status') {
  8.         $status = get_post_meta( $post_id, '_bs_meta_event_ticket_status', true );
  9.         echo $status;
  10.     }
  11.     if ($column_name == 'venue') {
  12.         echo get_post_meta( $post_id, '_bs_meta_event_venue', true );
  13.     }
  14. }

上面的代码中为新增加的几个列输出内容。
其中events的日期,是获取一个名为_bs_meta_event_date的字段
ticket status是获取_bs_meta_event_ticket_status的字段
venue是获取_bs_meta_event_venue的字段。

有了具体的输出内容自会后,后台文章列表就不是空的了

修改后台文章管理列表

 

 

TA的作品
  • Mohtml 作品/设计展示自适应wordpress主题 模板兔出品
  • QYKCMS后台软件v4.1.3部分操作界面截图
  • 轻松制作一款与众不同的QYKCMS网站主题
  • 怎样设置可以让QYKCMS系统运行得更快?
  • 使用 Apache .htaccess 文件设置QYKCMS伪静态规则的方法
  • QYKCMS后台管理软件入门级操作视频教程
  • IIS下使用 web.config 文件设置QYKCMS伪静态规则的方法
  • 同一个网站空间使用QYKCMS建立多个独立站点
  • QYKCMS后台管理员密码忘记了怎么办
  • QYKCMS 网站系统4.0 标签大全
查看全部

全部评论: 0

在线咨询
有什么可以帮到你
点击咨询

账号登录

忘记密码

第三方账号快速登录

Q Q 登 录 微 博 登 录

账号注册 已经有账号? 立即登录

发送验证码

第三方账号快速注册

Q Q 登 录 微 博 登 录