MENU

get_the_date()

get_the_date() は、現在の投稿またはページの公開日を取得するテンプレートタグです。

指定した形式で日付を返し、記事の公開日を表示するのに便利です。

目次

機能の説明

get_the_date() は、指定された投稿またはページの公開日を取得し、返します。

引数で日付のフォーマットを指定することが可能で、フォーマットをカスタマイズすることで任意の形で日付を表示できます。

シンプルなコード例

echo get_the_date();

現在の投稿の公開日をデフォルトのフォーマットで表示します(例:October 14, 2024)。

使い方の解説

引数

get_the_date($format, $post)
  • $format: 取得する日付のフォーマット(省略可能)
  • $post: 投稿IDまたは投稿オブジェクト(省略可能)

戻り値

指定されたフォーマットの日付(文字列)。

WordPressのフォーマット文字列の一例

  • F j, Y → October 14, 2024
  • Y/m/d → 2024/10/14
  • D, M j → Mon, Oct 14

デフォルトの形式で公開日を取得する

echo get_the_date();

投稿の公開日をデフォルト形式で表示します。

カスタムフォーマットで日付を表示する

echo get_the_date('Y年m月d日');

日付を「2024年10月14日」の形式で表示します。

一緒に使うことが多い関連タグ

the_date()

the_date() は、get_the_date() と似ていますが、自動的にエコーする関数です。日付が変わらない場合は同じ日付を繰り返し表示しないため、日付を見やすく整理できます。

the_date('F j, Y', '<p>', '</p>');

日付を<p>タグで囲み、重複する場合は最初の一回のみ表示します。

get_the_time()

get_the_time() は、投稿の公開時間を取得するためのタグです。get_the_date() と組み合わせて、日時を表示する際に使います。

echo get_the_date('Y/m/d') . ' ' . get_the_time('H:i');

「2024/10/14 15:30」の形式で公開日時を表示します。

関連タグを組み合わせたコード

if (have_posts()) {
    while (have_posts()) {
        the_post();
        echo '<h2>' . get_the_title() . '</h2>';
        echo '<p>公開日: ' . get_the_date('Y年m月d日') . '</p>';
        echo '<p>公開時間: ' . get_the_time('H:i') . '</p>';
    }
}

各投稿のタイトルと公開日、公開時間を表示するループです。

追加情報を取得したい場合

get_post_time() でタイムスタンプを取得

get_post_time() は、投稿の公開日時をUNIXタイムスタンプ形式で取得するタグです。

$timestamp = get_post_time('U');
echo 'UNIXタイムスタンプ: ' . $timestamp;

UNIXタイムスタンプを取得して表示します。

出力できる情報

  • U: UNIXタイムスタンプ
  • H: 時間(例: 15:30)
  • Y: 年(例: 2024)
  • m: 月(例: 10)

想定されるトラブル

正しい日付が表示されない

ループ外で使用しているか、投稿が正しく取得できていない可能性があります。

解決方法

  • have_posts() ループの中で使用してください。
  • 投稿が正しく取得できているか確認してください。

日付のフォーマットが反映されない

テーマやプラグインでカスタムフィルターが使われている可能性があります。

解決方法

  • フォーマットの引数が正しいか確認してください。
  • remove_filter() を使用して不要なフィルターを削除します。

Q&A

デフォルトの日付形式はどのようになりますか?

WordPressの管理画面の「設定 > 一般」で指定した日付形式がデフォルトになります。

公開時間も一緒に取得するにはどうすれば良いですか?

get_the_date()get_the_time() を組み合わせて、日時を表示します。

投稿が存在しない場合にエラーを防ぐ方法はありますか?

have_posts() を使ったループの中で使用することで、エラーを防げます。

まとめ

get_the_date() は、投稿やページの公開日を取得するための基本的なテンプレートタグです。

フォーマットを自由に指定でき、公開日時の表示をカスタマイズすることができます。

get_the_time()the_date() といった関連タグと組み合わせて使用することで、より柔軟な表示が可能です。

公開日が正しく表示されない場合は、ループ内で使用することや不要なフィルターの確認が重要です。

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

This site uses Akismet to reduce spam. Learn how your comment data is processed.

目次