ワードプレスのget_comments関数の使用方法・解説

概要

get_comments関数は、WordPressでコメント情報を取得するための関数です。この関数は、特定の投稿に関連するコメントを取得したり、特定の条件に基づいてコメントのリストを取得したりする際に便利です。以下は、get_comments関数がよく使われるシナリオの例です。

  1. 投稿に対する全てのコメントを取得する。
  2. 特定のユーザーによるコメントをフィルタリングして取得する。
  3. コメントのステータス(承認、保留など)に基づいて取得する。
  4. 特定の期間内のコメントのみを取得する。
  5. コメントの順序(最新、古いなど)を指定して取得する。
  6. コメント数を絞り込んで取得する。
  7. カスタムフィールドに基づいてコメントをフィルターする。
  8. コメントのメタデータを含めて取得する。

構文

get_comments( $args );

パラメータ

  • $args (配列): 取得するコメントの条件を指定するためのオプションの配列。

主要なオプションには以下があります。
post_id (整数): コメントを取得する投稿のID。
status (文字列): 取得するコメントのステータス(例: ‘approve’, ‘hold’など)。
number (整数): 取得するコメントの数。
order (文字列): コメントの順序 (‘ASC’ または ‘DESC’)。

戻り値

get_comments関数は、指定された条件に一致するコメントオブジェクトの配列を返します。該当するコメントがない場合は、空の配列が返されます。

関連する関数

ワードプレスバージョン

get_comments関数は、WordPress 2.0.0以降のバージョンで使用可能です。特定のバージョンで非推奨または削除されたことはありません。

コアファイルのパス

get_comments関数は、WordPressのコアファイルwp-includes/comment.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: 投稿に対する全コメントの取得

$comments = get_comments( array( 'post_id' => $post_id ) );
foreach ( $comments as $comment ) {
    echo $comment->comment_content;
}

このコードは、指定された投稿IDに関連する全てのコメントを取得し、その内容を表示します。

サンプルコード 2: 承認済みのコメントを取得

$approved_comments = get_comments( array( 'post_id' => $post_id, 'status' => 'approve' ) );

このコードは、指定された投稿に対する承認されたコメントのみを取得します。

サンプルコード 3: 特定のユーザーによるコメントを取得

$user_comments = get_comments( array( 'post_id' => $post_id, 'author_email' => 'user@example.com' ) );

このコードは、指定された投稿に対する特定のメールアドレスを持つユーザーのコメントを取得します。

サンプルコード 4: 最新の5件のコメントを取得

$latest_comments = get_comments( array( 'post_id' => $post_id, 'number' => 5, 'order' => 'DESC' ) );

このコードは、指定された投稿に対して最新の5件のコメントを降順で取得します。

サンプルコード 5: コメントのカスタムフィールドでフィルタリング

$custom_comments = get_comments( array( 'post_id' => $post_id, 'meta_key' => 'custom_meta', 'meta_value' => 'some_value' ) );

このコードは、指定された投稿に対してカスタムフィールドを持つコメントを取得します。

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


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