【WordPress】the_date()を使うと日付が出力されない現象について
WordPressで記事を投稿した日付を表示したい!
そんな時に、日付だからといってついthe_date()を使ってしまうと思わぬ落とし穴に落ちることがあります。
実はこのテンプレートタグは、同じ日に複数の記事があるときは、最初の記事に一度だけしか表示されないんです。
1日に1本までしか投稿したことがない人はなかなか気づけない落とし穴、私もハマりました…
ではどうすればよいか。
the_time()を使いましょう。
the_time()タグは投稿の公開時刻を表示します。
「いやいや、時刻じゃなくて日付が欲しいんだよぉ〜」って?
大丈夫! the_time()でも日付が表示できるんです!
the_time()はthe_date()と同様にパラメータに日付フォーマットを使用できます。
たとえば
<?php the_time('Y/m/d'); ?>
とすると
2019/07/31
と表示されます。
<?php the_time('Y年n月d日'); ?>
だと
2019年7月31日
など
ちなみにパラメータを指定しない場合、the_date()は日付が管理画面の一般設定で設定したフォーマットで表示されますが、the_time()の場合は時刻が表示されてしまいます。
管理画面の一般設定で設定した日付のフォーマットで表示させたい場合は、get_option()を併用します。
<?php the_time(get_option('date_format')); ?>
get_option()はWordPressのオプション設定の値を取得してくる関数です。
ここでは‘date_format’で日付の設定を拾ってきています。
以上、WordPressで投稿日が表示されないトラブルの原因と解決法でした。
以下のリンクのリファレンスも併せてご覧ください。
それではよいWordPressライフを!
参考