WordPressでthe_date()が表示されない?その原因と解決方法

WordPressでthe_date()が表示されない?その原因と解決方法

WordPressで記事の日付を表示する際に使用される<?php the_date(); ?>ですが、特定の記事だけ表示されないことがあります。この記事では、その原因と簡単な解決方法について解説します。

問題の概要

the_date()は、WordPressのテンプレートタグで、記事の日付を表示するために使用されます。しかし、この関数には以下のような仕様があります:

  • 同じ日付の記事が複数ある場合、最初の記事にしか日付を表示しません。
  • 2つ目以降の記事では何も出力されません。

この仕様が原因で、特定の記事で日付が表示されない問題が発生するのです。

解決方法

この問題を解決するためには、the_date()の代わりにget_the_date()を使用します。get_the_date()は、現在の投稿の日時を常に取得して表示します。

使用例:

以下のコードに変更します:

Before:

PHP
<?php the_date(); ?>

After:

PHP
<?php echo get_the_date(); ?>

get_the_date()の利点

  • すべての記事で確実に日付が表示される。
  • 日付の形式をカスタマイズできる(例:Y年m月d日)。

get_the_date()でのフォーマットカスタマイズ

get_the_date()は、フォーマットを引数で指定できます。たとえば、以下のように日付形式を変更可能です。

PHP
<?php echo get_the_date('Y年m月d日'); ?>

結果:2024年12月14日

デフォルトのフォーマットを使用したい場合は、引数を省略するだけでOKです。

実際の適用方法

テーマファイル(例:single.phpcontent.php)で、日付を表示している箇所を検索します。以下のように変更することで問題を解決できます。

Before:

PHP
<h2><?php the_date(); ?></h2>

After:

PHP
<h2><?php echo get_the_date(); ?></h2>

その後、ブラウザで再読み込みして、すべての記事で日付が表示されていることを確認してください。

まとめ

the_date()の仕様が原因で日付が表示されない場合、get_the_date()を使用することで確実に解決できます。この変更は簡単でありながら、表示に関する問題をスムーズに改善できる方法です。

制作のご相談・ご依頼はこちらから!

Author

WARACRO(ワラクロ)

2018年に起業し、Webデザイナー・WebディレクターとしてWordPress案件を中心にWeb制作のお仕事をしています。
このブログでは、Webサイト制作に関する情報をお届けしています。

WordPress学習におすすめの書籍

Amazonの読み放題サービスKindle Unlimited無料体験キャンペーン実施中!

Amazon Kindle Unlimited 公式
Webデザイン学習におすすめの講座
To Top