get_comments

説明

array get_comments( [ mixed $args = '' ] )
コメント情報を取得する。

パラメータ

  • $args
    検索条件を指定する連想配列または文字列。文字列で複数のキーワードを指定する場合は'&'で連結する。主なキーワードは次の通り。
    キーワード意味
    author_emailコメント投稿者メールアドレス(省略時は'')
    IDコメントID(省略時は'')
    karmaカルマ(省略時は'')
    number取得したいコメント数(省略時は'')
    offsetコメントの取得位置(省略時は'')
    orderby並び順を示すフィールド名(複数指定する場合は,で区切る)
    order並び順を示すキーワードとして'DESC'(降順)か'ASC'(昇順)を指定(省略時は'DESC')
    parent親コメントID(省略時は'')
    post_ID投稿情報ID(省略時は'')
    post_id投稿情報ID(省略時は0)
    status'hold'、'approve'、'spam'、'trash'などのコメントステータス(省略時は'')
    type'comment'、'pings'、'pingback'などのコメント種別(省略時は'')
    user_idユーザID(省略時は'')
    count条件にマッチした件数を取得する場合はtrue、コメント情報そのものを取得する場合はfalse(省略時はfalse)
    searchコメント投稿者の名前、メールアドレス、URL、IPアドレスまたはコメント内容を部分一致するキーワード(省略時は'')
    post_authorコメント元投稿の投稿者名(省略時は'')
    post_nameコメント元投稿の投稿名(省略時は''、タイトルではない)
    post_parentコメント元投稿の親投稿ID(省略時は'')
    post_status'publish'、'private'などのコメント元投稿の投稿ステータス(省略時は'')
    post_type'post'、'attackment'などのコメント元投稿の投稿タイプ(省略時は'')
    meta_key検索・並び替えを行うコメントメタ情報のキー名(省略時は'')
    meta_value検索するコメントメタ情報の値(省略時は'')
    meta_queryコメントメタ情報の検索条件を配列で指定(省略時は'')
    date_query日時検索条件の配列を指定(省略時はnull)

返り値

条件にマッチしたコメントデータ(オブジェクト)が格納された配列を返す。コメントデータの内容は次の通り。
フィールド名意味
comment_IDコメントID
comment_post_IDコメントされた投稿情報のID
comment_authorコメント投稿者
comment_author_emailコメント投稿者のメールアドレス
comment_author_urlコメント投稿者のWebページURL
comment_author_IPコメント投稿時のIPアドレス
comment_dateコメント投稿日時
comment_date_gmtコメント投稿日時(GMT時間)
comment_contentコメント内容
comment_karmaカルマ
comment_approved承認状態
comment_agentユーザエージェント
comment_typeコメント種別
comment_parent親コメントのID
user_idコメント投稿者のユーザID(サイトアカウント保持者でログイン状態でコメント投稿した場合)

注意

post_idを省略した(または0を指定した)場合は、すべてのコメント情報が対象とし、author_emailやkarmaなどにより絞り込みを行う。statusを省略した場合は、'hold'または'approve'が対象となり、'spam'や'trash'は対象にならないので、注意が必要である。

使用例

  • IDが10の投稿ページのコメント情報を5件分取得する(文字列指定)。
    <?php $comments = get_comments( 'post_id=10&number=5' ); ?>
  • IDが10の投稿ページのコメント情報を5件分取得する(配列指定)。
    <?php $comments = get_comments( array( 'post_id' => 10, 'number' => 5 ) ); ?>

フィルター

直接実行するフィルターはありません(3.1以降はWP_Comment_Queryクラス参照)。

アクション

直接実行するアクションはありません(3.1以降はWP_Comment_Queryクラス参照)。

ソースファイル

/wp-includes/comment.php

最終更新 : 2018年05月27日 10:51



お勧め

プラグインのロード順を制御する(2014年6月9日 更新)

これまでプラグインがどのような順番でロードされるか意識していなかったのだが、とある自作プラグインを他のプラグインよりも先にロードさせたくなったので調べてみた。

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。

Contact Form 7に確認フェーズを(2012年12月16日 更新)

Contact Form 7はWordPressによるサイト製作でお世話になることが多いプラグインの1つ。ただ、クライアント様によっては、入力、確認、送信の3フェーズにしたいという要望があり、そんな時は別の方法を採用していたのですが、JavaScript(jQuery)を使ってページ遷移しなくてもいいなら確認フェーズは用意できるかなと思い、作り込んでみた。

プラグインのヘッダー情報を国際化対応しよう(2018年5月27日 更新)

バージョン4.8がリリースされてひと段落。あらためてプラグイン一覧ページを見てみると「Akismet」が「Akismet Anti-Spam (アンチスパム)」と表示されていた。説明文だけじゃなくプラグイン名も国際化対応できたのね。

メタボックスをクラシックエディターのみで表示する(2019年1月15日 更新)

投稿画面向けにメタボックスを使ったプラグインがあり、それがブロックエディターで意図した通りに機能しなかった。この対処方法を考える過程でエディタータイプに応じてメタボックスを出し分けできる方法が見つかったので紹介したい。