WordPress : 英語表記で月(month)や曜日を取得する

WordPress

WordPress日本語版で投稿日時の取得を行うと、強制的に日本語に翻訳された日時表記になります。

この翻訳機能を回避して、英語表記で月(month)や曜日を取得する方法を紹介します。

英語表記で月(month)や曜日を表示するには

WordPressで投稿日時を取得する関数 get_the_date()the_date() は、自動で翻訳機能が適用されるため、日本語環境で使用した場合に英語指定の日時フォーマットが正しく取得できない制限があります。

この制限を回避するには、自動で翻訳機能が動作しない関数 get_post_time()get_post_modified_time() を使うと良いでしょう。

get_post_time(), get_post_modified_time()の使い方

投稿日時を取得するにはget_post_time()、更新日時を取得するにはget_post_modified_time()を使用します。

関数オプションは以下の通りです。

<?php get_post_time( $d, $gmt, $post, $translate ); ?>
<?php get_post_modified_time( $d, $gmt, $post, $translate ); ?>
  • $d : 日付形式の指定。初期値はUNIXタイム。
  • $gmt : GMT時間を返すかどうか。初期値はfalse。
  • $post : 投稿IDの指定。初期値はGlobal Post ID。
  • $translate : 翻訳の可否。初期値はfalse。

キモになるのは日付形式の指定 $d です。英語表記で取得するには以下のオプションが有効です。

項目 表記形式 オプション 実表記
フルスペル F January – December
省略形式 M Jan – Dec
曜日 フルスペル l Sunday – Saturday
省略形式 D Mon – Sun

たとえば更新日時として「24 Dec 2013」を取得するには、以下のようなオプションを与えると良いでしょう。

<?php echo get_post_time('d M Y'); ?>

$d オプションの詳細は、「日付と時刻の書式」を参照してください。

参考

当記事の作成にあたり、以下の情報を参考にしました。貴重な情報の公開に感謝します。

WordPress › フォーラム » twenty elevenの投稿日時を英語&数字表記にカスタマイズしたい
WordPress Snippet | WordPress日本語版 日付表示が、設定どおりに動作しない問題に対処する