WordPressでは管理画面の「投稿」で投稿の一覧を見ることが出来ます。前々から、この一覧にある日付の表示が分かりにくいなぁ、と思っていたのですが、これをちょっといじってみることにしました。修正してやるー!
WordPressで記事を書いたことのある人なら分かると思いますが、WordPressでは管理画面にある「投稿」で記事の一覧が見られるようになっています。そして、一覧には日付も表示されるようになっています。
こんな風に。
この日付の部分、24時間以内に投稿された記事は「n時間前」と表示されるようになっています。これ、すごく分かりにくくないですか?そう思っているのはicoroの2人だけ?普通に日時を表示してくれたほうが良いのですが。
一応、日付の上にカーソルを置いてしばらく待つと、「2009年11月17日 9:00:00 AM」というように日時がポップアップ表示(?)されるのですが、いちいちそんなことをするのはめんどくさいわけで。しかも、日頃、24時間表記で行動している自分にとって、AM・PM表示は分かりにくい。あと、秒数はなくてもいい。
ということで、ソースいじって以下のように修正しました。
時間を表示するようにしたついでに、「公開済み」の文字は緑色で、「予約済み」の文字は灰色で、それぞれ表示するようにしました。
「かなり分かりやすくなった」とicoro内では評判です。
ソースコード
編集したのは「wp-admin/includes/template.php」の中にある関数 _post_rowです。変更内容は以下の通り。コメントアウトしてあるのはオリジナルのコードです。
case 'date':
if ( '0000-00-00 00:00:00' == $post->post_date && 'date' == $column_name ) {
// $t_time = $h_time = __('Unpublished');
$t_time = __('Unpublished');
// $time_diff = 0;
} else {
// $t_time = get_the_time(__('Y/m/d g:i:s A'));
$t_time = get_the_time(__('Y/m/d G:i'));
$m_time = $post->post_date;
$time = get_post_time('G', true, $post);
$time_diff = time() - $time;
// if ( $time_diff > 0 && $time_diff < 24*60*60 )
// $h_time = sprintf( __('%s ago'), human_time_diff( $time ) );
// else
// $h_time = mysql2date(__('Y/m/d'), $m_time);
}
echo '<td ' . $attributes . '>';
// if ( 'excerpt' == $mode )
echo apply_filters('post_date_column_time', $t_time, $post, $column_name, $mode);
// else
// echo '<abbr title="' . $t_time . '">' . apply_filters('post_date_column_time', $h_time, $post, $column_name, $mode) . '</abbr>';
echo '<br />';
if ( 'publish' == $post->post_status ) {
// _e('Published');
echo '<span style="color:green;">' . __('Published') . '</span>';
} elseif ( 'future' == $post->post_status ) {
if ( $time_diff > 0 )
echo '<strong class="attention">' . __('Missed schedule') . '</strong>';
else
// _e('Scheduled');
echo '<span style="color:#999;">' . __('Scheduled') . '</span>';
} else {
_e('Last Modified');
}
echo '</td>';
break;
コアにはあんまり手を入れたくないのですが、仕方なく手を入れているところが幾つかあります。まあ、不満な場所があっても(知識さえあれば)自分で直せるというのが、オープンソースの良いところ。ということで。