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

概要

get_comment_timeフィルタは、コメント投稿日時を取得する際に使用されるフィルタです。このフィルタは、WordPress内でコメントの日付の表示形式を変更したり、特定の条件に基づいてカスタマイズしたりするために利用されることがよくあります。具体的には、以下のような機能実装で使われることが一般的です:

  1. コメントの投稿日時にカスタムフォーマットを適用する。
  2. コメント日時に対するローカライズ(言語による変更)を行う。
  3. 投稿者のタイムゾーンに関連する日時の表示に使用する。
  4. コメント日時の前後に追加情報(例:コメントの状態)を表示する。
  5. コメント日時を他の情報と組み合わせて表示する。
  6. 特定の条件に基づいてコメント日時をフィルタリングする。
  7. コメントが特定の状態にある場合にフォーマットを変更する。
  8. 記事の投稿日とコメント日時を比較するために利用する。

構文

apply_filters( 'get_comment_time', string $the_time, string $d, WP_Comment $comment );

パラメータ

  • $the_time (string): フィルタ前のコメント時間。
  • $d (string): 日付フォーマット。
  • $comment (WP_Comment): 対象のコメントオブジェクト。

戻り値

フィルタによって変更されたコメントの投稿日時を返します。

関連する関数

関連関数

使用可能なバージョン

WordPress 1.5 以降

コアファイルのパス

wp-includes/comment-template.php

サンプルコード

サンプルコード1: カスタム日付フォーマットの適用

add_filter('get_comment_time', function($the_time, $d, $comment) {
    return date('Y-m-d H:i', strtotime($the_time));
}, 10, 3);

このサンプルコードは、コメントの投稿日時を「年-月-日 時:分」形式に変更するフィルタを追加します。

サンプルコード2: コメント日時のローカライズ

add_filter('get_comment_time', function($the_time, $d, $comment) {
    return date_i18n(get_option('date_format'), strtotime($the_time));
}, 10, 3);

このサンプルコードは、WordPressの設定に基づいて日付をローカライズして表示します。

サンプルコード3: 特定のコメントに対するフォーマットの変更

add_filter('get_comment_time', function($the_time, $d, $comment) {
    if ($comment->comment_author == '特定のユーザー名') {
        return '特別な日時: ' . $the_time;
    }
    return $the_time;
}, 10, 3);

このサンプルは、特定のユーザー名のコメントに対して独自のフォーマットで日時を表示します。

サンプルコード4: タイムゾーンの考慮

add_filter('get_comment_time', function($the_time, $d, $comment) {
    $timezone = get_option('timezone_string');
    date_default_timezone_set($timezone);
    return date('Y-m-d H:i', strtotime($the_time));
}, 10, 3);

このサンプルコードでは、コメントの投稿日時をその時のタイムゾーンに基づいて調整します。

サンプルコード5: コメントの状態による表示形式の変更

add_filter('get_comment_time', function($the_time, $d, $comment) {
    if ($comment->comment_approved == '0') {
        return '承認待ち: ' . $the_time;
    }
    return $the_time;
}, 10, 3);

ここでは、承認待ちのコメントに特別なメッセージを付加して表示しています。

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

アクション 使用可能性
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

非推奨または削除されたバージョン

現在のところ、get_comment_time フィルタは非推奨または削除されたバージョンはありません。

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


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