2013-01-21
WordPress 日本語版で英語の日付表記をしたいとき用メモ
WordPress で記事の投稿日時の部分を英語表記にしたい場合、日本語版を使っていると the_time
や the_date
などでは意図したように出力されません。the_time('M jS, Y');
などとすると、「1月 18th, 2012」と出力されてしまいます。
調べてみると、get_post_time
で意図通りの表示が実現。
Template Tags/get post time « WordPress Codex
echo get_post_time('M j, Y'); // Jan 21st, 2013 と出力される
また、記事の更新の日付も同様にしたい場合には、get_post_modified_time
を使うことで可能。get_post_modified_time
は Atom の出力に使われているみたいです。
Function Reference/get post modified time « WordPress Codex
ということで、英語での日付表記は、以下のようにしておけば可能(今回不要な引数については省略してます)。
echo get_post_time('M jS, Y');
echo get_post_modified_time('M jS, Y');
get_post_modified_time
を見つけて、無事解決となったあとで、まとりさんの記事を発見したので、こちらもメモ。
WordPress 日本語版で、テーマ内の日付を英語表記で表示する | Unformed Building
get_post_time
と get_post_modified_time
を wp-includes/general-template.php で見てみると、2つとも mysql2date
を使っているので、まとりさんの記事にあるように、以下のようにしても意図通りの表示になります。
mysql2date('M jS, Y', $post->post_date, false);
mysql2date('M jS, Y', $post->post_modified, false);