ワードプレスのthe_timeフィルタの使用方法・解説

概要

the_timeフィルタは、投稿時刻を表示するために使用されるフィルタです。主に、記事が作成された日時をカスタマイズして表示したい場合に利用されます。このフィルタを実装することで、以下のような機能を実現することができます。

  1. 日時のフォーマットを変更する
  2. 時間の前に特定の文字や記号を追加する
  3. 投稿時刻を異なるタイムゾーンで表示する
  4. 時刻の表示を「公開日時」から「更新日時」に変更する
  5. 特定の条件が満たされた場合のフォーマット変更
  6. 日付が特定の曜日や祝日であるかを確認する装飾表示
  7. 日時の後ろにコメント数などの情報を追加する
  8. 記事のメタデータとしての時間をカスタマイズする

構文

the_time( $format, $post_id );

パラメータ

  • $format(string): 日時の表示フォーマット。date()関数に対応。
  • $post_id(int): 投稿ID。省略した場合は現在の投稿が使用されます。

戻り値

  • フィルタリングされた時刻文字列を返します。

関連する関数

the_time

使用可能なバージョン

  • WordPress 1.5以降

コアファイルのパス

  • wp-includes/plugin.php

この関数のアクションでの使用可能性

アクション 使用例
mu_plugin_loaded
registered_post_type
plugins_loaded
wp_roles_init
setup_theme
after_setup_theme
set_current_user
init
register_sidebar
wp_loaded
send_headers
parse_query
pre_get_posts
wp
template_redirect
get_header
wp_head

サンプルコード

  1. カスタムフォーマットで投稿時刻を表示する

    add_filter('the_time', function($time) {
       return date('Y-m-d H:i:s', strtotime($time));
    });
    
    • 説明: the_timeフィルタを使い、投稿の作成日時をY-m-d H:i:s形式で表示します。
  2. 投稿時刻の前に「投稿日: 」を追加

    add_filter('the_time', function($time) {
       return '投稿日: ' . $time;
    });
    
    • 説明: 投稿時刻の前に「投稿日: 」を追加することで、時刻表示を明確にします。
  3. 別のタイムゾーンで投稿時刻を表示

    add_filter('the_time', function($time) {
       return mysql2date('Y-m-d H:i:s', $time, false);
    }, 10, 2);
    
    • 説明: 投稿時刻をデフォルトのタイムゾーンから別のタイムゾーン(UTCなど)に変換して表示します。
  4. 更新日時として投稿時刻を表示

    add_filter('the_time', function($time, $post) {
       if ($post->post_date != $post->post_modified) {
           return '更新日時: ' . $time;
       }
       return $time;
    }, 10, 2);
    
    • 説明: 投稿が更新された日時を表示する条件付きで、更新された場合に「更新日時: 」と表示します。
  5. 特定の投稿タイプでのみ時刻をカスタマイズ

    add_filter('the_time', function($time) {
       if (get_post_type() == 'post') {
           return '記事日時: ' . $time;
       }
       return $time;
    });
    
    • 説明: 投稿タイプが「post」の場合に特定の前置きを追加し、他の投稿タイプではそのままの時刻を表示します。

すべてのサンプルコードは著作権フリーで使用できます。

この関数について質問する


上の計算式の答えを入力してください