如何在edit.php(贴子页面)上更改发布日期格式?

时间:2011-06-04 作者:Thunder Rabbit

编辑时。php的主要内容是一个帖子列表,其中的列包括发布日期。

我想在管理页面上更改发布日期的日期格式。在这种情况下,我不想改变用户看到的内容;我想更改管理员看到的内容。

我想将一周中的某一天添加到发布/计划日期,因为我计划“至少每周二”发布,并想确保我已正确安排了帖子。

搜索之后,最好的方法似乎是创建自定义字段,但如果有更微妙的方法,我宁愿不安装自定义字段插件。

编辑:感谢Bainternet的评论,我看到我已经有了自定义字段(默认情况下该选项只是隐藏的)。而且,我看到自定义字段不是我想要的。数据已经存在;我只是想在屏幕上对其进行不同的格式化。

2 个回复
最合适的回答,由SO网友:Milo 整理而成

  1. Add a column to the post edit screen 并根据您的喜好设置日期格式。

  2. Remove the default Date column.

EDIT 下面是要放入主题中的代码functions.php 文件:

EDIT 2 添加了其他代码以添加发布状态并使列可排序,现在这应该是原始日期列的完整副本。

function my_custom_columns( $columns ) {
  unset( $columns[\'date\'] );
  $columns[\'mydate\'] = \'My Custom Date\';
  return $columns;
}

function my_format_column( $column_name , $post_id ) {
    if($column_name == \'mydate\'){
        echo get_the_time( \'l, F j, Y\', $post_id )."<br>".get_post_status( $post_id );
    }
}

function my_column_register_sortable( $columns ) {
    $columns[\'mydate\'] = \'mydate\';
    return $columns;
}

function my_column_orderby( $vars ) {
    if ( isset( $vars[\'orderby\'] ) && \'mydate\' == $vars[\'orderby\'] ) {
        $vars = array_merge( $vars, array(
            \'orderby\' => \'date\'
        ) );
    }
    return $vars;
}

function my_column_init() {
  add_filter( \'manage_posts_columns\' , \'my_custom_columns\' );
  add_action( \'manage_posts_custom_column\' , \'my_format_column\' , 10 , 2 );
  add_filter( \'manage_edit-post_sortable_columns\', \'my_column_register_sortable\' );
  add_filter( \'request\', \'my_column_orderby\' );
}
add_action( \'admin_init\' , \'my_column_init\' );
感谢Scribu 为他的tutorial on sortable columns

SO网友:LUIS

您只需使用过滤器post\\u date\\u column\\u time:

add_filter( \'post_date_column_time\' , \'my_post_date_column_time\' , 10 , 2 );

function my_post_date_column_time( $h_time, $post ) {
    $h_time = get_post_time( \'l, F j, Y\', false, $post );
    return $h_time;
}

结束

相关推荐

Admin Theme customization

我遵循wordpress codex网站上关于通过插件创建管理主题的说明。我激活了插件,但我的样式表没有包含在<head>.. 这是我的代码:add_action( \'admin_init\', \'kd_plugin_admin_init\' ); add_action( \'admin_menu\', \'kd_plugin_admin_menu\' ); function kd_plugin_admin_init() { /* Register