
前回get_the_date()で日付を出力する方法について説明しました。
しかし一日に複数回更新があるようなブログですと投稿時刻も必要になってくることがあります。
そんなとき使用するのが、
get_the_time()
です。その名の通り投稿の時刻を取得するWordPress関数です。
説明
『WordPress Codex』にはこう書いてあります。
現在の投稿(または指定された投稿)の時刻を PHP で使えるように返します。取得するのでなく表示するにはthe_time()を使ってください。
テンプレートタグ/get the time-WordPress Codex
get_the_time()は投稿の時刻を”取得”するものですのでget_the_date()と同様に“echo”と一緒に使用する必要があります。
時刻のフォーマット
時刻のフォーマットですがget_the_date()と同様にWordPress管理画面の[設定]−[一般設定]−[時刻形式]から設定したものが反映します。

日付の設定のすぐ下ですね。
使い方
では使い方を見てみましょう。
時刻だけ表示するのもおかしいのでget_the_date()で日付と一緒に記述してみます。
index.htmlなど<?php echo get_the_date(); ?> <?php echo get_the_time(); ?>
先に日付を出力、そこにつなげて時刻を出力するよう記述しました。
出力されるHTML2020年7月14日 6:00 午前
このように出力されます。
WordPressの言語設定を”日本語”にしているので”午前”と漢字で出力されています。
設定を変えずに個別に時刻フォーマットを指定する
get_the_time()でもget_the_date()と同様にフォーマットを指定して出力する事もできます。
上では”午前”と漢字で出力されてしまいましたが、英語で出力したい場合は引数でフォーマットを指定します。
その前に時刻のフォーマットにはどのようなものがあるか見てみましょう。
時刻のフォーマット
【時刻】 | 表示部分 | 説明 | 表示例 |
---|---|---|---|
H | 時間 | 0を付けた24時間 | 01、23 |
G | 時間 | 0を付けない24時間 | 1、23 |
h | 時間 | 0を付けた12時間 | 01、12 |
g | 時間 | 0を付けない12時間 | 1、12 |
i | 分 | 0を付ける | 01、59 |
s | 秒 | 0を付ける | 1、59 |
a | 午前・午後 | 小文字 | am、pm |
A | 午前・午後 | 大文字 | AM、PM |
この一覧にならってコードを記述してみます。
index.htmlなど<?php echo get_the_date(); ?> <?php echo get_the_time( ‘g:i a’ ); ?>
“:”は普通にそのまま出力させる文字です。
では出力されたものを見てみましょう。
2020年7月14日 6:00 am
これで”am”と英語の表記に変わりました。
別の投稿の時刻を表示する
get_the_date()の記事とまったく同様の説明になってしまいますが、get_the_time()でも別の記事の時刻を表示できます。
index.htmlなど<?php echo get_the_date( ”, ‘5’ ); ?> <?php echo get_the_time( ”, ‘5’ ); ?>
日付だけ別の記事から引っ張ってきてはおかしいので日付と時刻どちらも投稿IDが”5″の投稿のものを取得してみます。
投稿IDが5の投稿日時は2020年7月15日の午後8:30です。
2020年7月15日 8:30 午後
これで正しく出力できました。
なお投稿IDの確認方法は投稿の編集ページを開くいたときのURLの「〜wp-admin/post.php?post=5&〜」の“post=”に続く数字から確認できます。
まとめ
get_the_time()の使い方はget_the_date()とほぼ同じです。
時刻まで表示する必要があるときはあまり多くないかもしれませんが、使い方を覚えておきましょう。
コメント