• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

「関数リファレンス/get comments」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(https://developer.wordpress.org/reference/functions/get_comments/ をマージ。)
(残りを和訳。)
 
(同じ利用者による、間の2版が非表示)
1行目: 1行目:
{{NeedTrans}}
+
{{CheckTrans}}
  
 
== 説明<span id="Description"></span> ==
 
== 説明<span id="Description"></span> ==
17行目: 17行目:
 
=== 引数 ===
 
=== 引数 ===
  
{{Parameter|author_email|string|Comment author email address.|optional|empty}}
+
{{Parameter|author_email|文字列|コメント投稿者のメールアドレス。|オプション|}}
{{Parameter|author__in|array|Array of author IDs to include comments for.|optional|empty}}
+
{{Parameter|author__in|配列|含めるコメントの投稿者 ID の配列。|オプション|}}
{{Parameter|author__not_in|array|Array of author IDs to exclude comments for.|optional|empty}}
+
{{Parameter|author__not_in|配列|除外するコメントの投稿者 ID の配列。|オプション|}}
{{Parameter|comment__in|array|Array of comment IDs to include.|optional|empty}}
+
{{Parameter|comment__in|配列|含めるコメントの ID の配列。|オプション|}}
{{Parameter|comment__not_in|array|Array of comment IDs to exclude.|optional|empty}}
+
{{Parameter|comment__not_in|配列|除外するコメントの ID の配列。|オプション|}}
{{Parameter|count|bool|Whether to return a comment count (true) or array of comment objects (false).|optional|false}}
+
{{Parameter|count|真偽値|true ならコメント数、false ならコメントオブジェクトの配列を返す。|オプション|false}}
{{Parameter|date_query|array|Date query clauses to limit comments by. See WP_Date_Query.|optional|null}}
+
{{Parameter|date_query|配列|コメントを絞り込む日付クエリ。[https://developer.wordpress.org/reference/classes/wp_date_query/ WP_Date_Query] を見てください。|オプション|null}}
{{Parameter|fields|string|Comment fields to return. Accepts 'ids' for comment IDs only or empty for all fields.|optional|empty}}
+
{{Parameter|fields|文字列|コメントの指定したフィールドを返す。<code>'ids'</code> ならコメント ID だけ、空ならすべてのフィールドを返す。|オプション|}}
{{Parameter|ID|int|'''Currently unused.'''|optional}}
+
{{Parameter|ID|整数|'''現在使われていません。'''|オプション}}
{{Parameter|include_unapproved|array|Array of IDs or email addresses of users whose unapproved comments will be returned by the query regardless of ''status''.|optional|empty}}
+
{{Parameter|include_unapproved|配列|コメントの ''status'' に関わらず、この配列で指定した ID またはメールアドレスの投稿者の未承認コメントを返す。|オプション|}}
{{Parameter|karma|int|Karma score to retrieve matching comments for.|optional|empty}}
+
{{Parameter|karma|整数|指定したカルマ値のコメントを取得する。'''注:''' コメントのカルマ値は使われておらず常に<tt>0</tt>です。|オプション|}}
{{Parameter|meta_key|string|Include comments with a matching comment meta key.|optional|empty}}
+
{{Parameter|meta_key|文字列|指定したコメントメタ(カスタムフィールド)キーを持つコメントを含める。|オプション|}}
{{Parameter|meta_value|string|Include comments with a matching comment meta value. Requires ''meta_key'' to be set.|optional|empty}}
+
{{Parameter|meta_value|文字列|指定したコメントメタ(カスタムフィールド)値を持つコメントをを含める。一緒に <code>'meta_key'</code> を指定しなければならない。|オプション|}}
{{Parameter|meta_query|array|Meta query clauses to limit retrieved comments by. See WP_Meta_Query.|optional|empty}}
+
{{Parameter|meta_query|配列|コメントを絞り込むメタ(カスタムフィールド)クエリ。[[クラスリファレンス/WP_Meta_Query|WP_Meta_Query]] を見てください。|オプション|}}
{{Parameter|number|int|Maximum number of comments to retrieve.|optional|null (no limit)}}
+
{{Parameter|number|整数|取得するコメントの最大数。|オプション|null (無制限)}}
{{Parameter|offset|int|Number of comments to offset the query. Used to build LIMIT clause.|0}}
+
{{Parameter|offset|整数|クエリで取得するコメントのオフセット数。<tt>LIMIT</tt> 句の組み上げに使用。|0}}
{{Parameter|orderby|string_array|Comment field or array of comment fields. To use 'meta_value' or 'meta_value_num', ''meta_key'' must also be defined. To sort by a specific ''meta_query'' clause, use that clause's array key. <ul><li>''comment_agent''</li><li>''comment_approved''</li><li>''comment_author''</li><li>''comment_author_email''</li><li>''comment_author_IP''</li><li>''comment_author_url''</li><li>''comment_content''</li><li>''comment_date''</li><li>''comment_date_gmt''</li><li>''comment_ID''</li><li>''comment_karma''</li><li>''comment_parent''</li><li>''comment_post_ID''</li><li>''comment_type''</li><li>''user_id''</li><li>''meta_value''</li><li>''meta_value_num''</li><li>the value of meta_key</li><li>and the array keys of ''meta_query''</li><li>Also accepts false, an empty array, or 'none' to disable ''ORDER BY'' clause</li>|optional|''comment_date_gmt''}}
+
{{Parameter|orderby|文字列&vert;配列|単一のコメントフィールド(文字列)またはコメントフィールドの配列。これを使うには <code>'meta_value'</code> または <code>'meta_value_num'</code> と <code>'meta_key'</code> を定義する必要がある。特定の ''meta_query'' 句で並べ替えるには、その句の配列キーを使ってください。<ul><li>''comment_agent''</li><li>''comment_approved''</li><li>''comment_author''</li><li>''comment_author_email''</li><li>''comment_author_IP''</li><li>''comment_author_url''</li><li>''comment_content''</li><li>''comment_date''</li><li>''comment_date_gmt''</li><li>''comment_ID''</li><li>''comment_karma''</li><li>''comment_parent''</li><li>''comment_post_ID''</li><li>''comment_type''</li><li>''user_id''</li><li>''meta_value''</li><li>''meta_value_num''</li><li>meta_key の値</li><li>そして ''meta_query'' の配列キー</li><li>また false, 空の配列, 'none' のいずれかを指定すると ''ORDER BY'' 句を無効にする</li>|オプション|''comment_date_gmt''}}
{{Parameter|order|string|How to order retrieved comments. Accepts <ul><li>''ASC''</li><li>''DESC''</li>.|optional|'DESC'.}}
+
{{Parameter|order|文字列|取得するコメントの順序。次のいずれか: <ul><li>''ASC''</li><li>''DESC''</li>.|オプション|'DESC'}}
{{Parameter|parent|int|Parent ID of comment to retrieve children of.|optional|empty}}
+
{{Parameter|parent|整数|指定した ID のコメントの子コメントを取得する。|オプション|}}
{{Parameter|post_author__in|array|Array of author IDs to retrieve comments for.|optional|empty}}
+
{{Parameter|post_author__in|配列|指定した ID の投稿者によるコメントを取得する。|オプション|}}
{{Parameter|post_author__not_in|array|Array of author IDs *not* to retrieve comments for.|optional|empty}}
+
{{Parameter|post_author__not_in|配列|指定した ID の投稿者によるコメントを''除いて''取得する。|オプション|}}
{{Parameter|post_ID|int|'''Currently unused'''|optional}}
+
{{Parameter|post_ID|整数|'''現在使われていません。'''|オプション}}
{{Parameter|post_id|int|Limit results to those affiliated with a given post ID.|optional|0}}
+
{{Parameter|post_id|整数|指定した ID の投稿に対するコメントだけに制限する。|オプション|0}}
{{Parameter|post__in|array|Array of post IDs to include affiliated comments for.|optional|empty}}
+
{{Parameter|post__in|配列|指定した配列内の ID を持つ投稿に対するコメントに制限する。|オプション|}}
{{Parameter|post__not_in|array|Array of post IDs to exclude affiliated comments for.|optional|empty}}
+
{{Parameter|post__not_in|配列|指定した配列内の ID を持つ投稿に対するコメントを除外する。|オプション|}}
{{Parameter|post_author|int|Comment author ID to limit results by.|optional|empty}}
+
{{Parameter|post_author|整数|指定した投稿者によるコメントに絞る。|オプション|}}
{{Parameter|post_status|string|Post status to retrieve affiliated comments for.|optional|empty}}
+
{{Parameter|post_status|文字列|指定した状態のコメントを取得する。|オプション|}}
{{Parameter|post_type|string|Post type to retrieve affiliated comments for.|optional|empty}}
+
{{Parameter|post_type|文字列|指定した投稿タイプの投稿に対するコメントを取得する。|オプション|}}
{{Parameter|post_name|string|Post name to retrieve affiliated comments for.|optional|empty}}
+
{{Parameter|post_name|文字列|指定した名前の投稿に対するコメントを取得する。|オプション|}}
{{Parameter|post_parent|int|Post parent ID to retrieve affiliated comments for.|optional|empty}}
+
{{Parameter|post_parent|整数|指定した ID の投稿を親に持つ投稿に絞る。|オプション|}}
{{Parameter|search|string|Search term(s) to retrieve matching comments for.|optional|empty}}
+
{{Parameter|search|文字列|指定したタームを持つコメントを取得する。|オプション|}}
{{Parameter|status|string|Comment status to limit results by. Accepts 'hold', 'approve', 'all', or a custom comment status.|optional|''all''}}
+
{{Parameter|status|文字列|指定した状態のコメントに絞る。指定可能な状態は 'hold', 'approve', 'all' およびコメントのカスタム状態。|オプション|''all''}}
{{Parameter|type|string_array|Include comments of a given type, or array of types. Accepts 'comment', 'pings' (includes 'pingback' and 'trackback'), or any custom type string.|optional|empty}}
+
{{Parameter|type|文字列&vert;配列|指定した種類(または種類の配列)のコメントを含める。'comment', 'pings' ('pingback' 'trackback' を含む), またはカスタム種類の文字列。|オプション|}}
{{Parameter|type__in|array|Include comments from a given array of comment types.|optional|empty}}
+
{{Parameter|type__in|配列|指定した配列内のコメント種類のコメントを含める。|オプション|}}
{{Parameter|type__not_in|array|Exclude comments from a given array of comment types.|optional|empty}}
+
{{Parameter|type__not_in|配列|指定した配列内のコメント種類のコメントを除外する。|オプション|}}
{{Parameter|user_id|int|Include comments for a specific user ID.|optional|empty}}
+
{{Parameter|user_id|整数|指定した ID のユーザーに対するコメントを含める。|オプション|}}
  
 
== 戻り値<span id="Returns"></span> ==
 
== 戻り値<span id="Returns"></span> ==
60行目: 60行目:
 
=== WP_Comment オブジェクトの内容 ===
 
=== WP_Comment オブジェクトの内容 ===
  
; <tt>comment_ID</tt> : (''integer'') The comment ID
+
; <tt>comment_ID</tt> : (''整数'') コメントの ID
; <tt>comment_post_ID</tt> : (''integer'') The ID of the post/page that this  comment responds to
+
; <tt>comment_post_ID</tt> : (''整数'') コメントが付いた投稿または固定ページの ID
; <tt>comment_author</tt> : (''string'') The comment author's name
+
; <tt>comment_author</tt> : (''文字列'') コメント投稿者の名前
; <tt>comment_author_email</tt> : (''string'') The comment author's email
+
; <tt>comment_author_email</tt> : (''文字列'') コメント投稿者のメールアドレス
; <tt>comment_author_url</tt> : (''string'') The comment author's webpage
+
; <tt>comment_author_url</tt> : (''文字列'') コメント投稿者のウェブサイト
; <tt>comment_author_IP</tt> : (''string'') The comment author's IP
+
; <tt>comment_author_IP</tt> : (''文字列'') コメント投稿者の IP アドレス
; <tt>comment_date</tt> : (''string'') The datetime of the comment (<tt>YYYY-MM-DD HH:MM:SS</tt>)
+
; <tt>comment_date</tt> : (''文字列'') コメントの日時 (<tt>YYYY-MM-DD HH:MM:SS</tt>)
; <tt>comment_date_gmt</tt> : (''string'') The GMT datetime of the comment (<tt>YYYY-MM-DD HH:MM:SS</tt>)
+
; <tt>comment_date_gmt</tt> : (''文字列'') コメントの GMT 日時 (<tt>YYYY-MM-DD HH:MM:SS</tt>)
; <tt>comment_content</tt> : (''string'') The comment's content
+
; <tt>comment_content</tt> : (''文字列'') コメント内容
; <tt>comment_karma</tt> : (''integer'') The comment's karma
+
; <tt>comment_karma</tt> : (''整数'') コメントのカルマ値 (訳注: 常に0です)
; <tt>comment_approved</tt> : (''string'') The comment approval level (0, 1 or "spam")
+
; <tt>comment_approved</tt> : (''文字列'') コメントの承認レベル (0, 1 または "spam")
; <tt>comment_agent</tt> : (''string'') The commenter's user agent (browser, operating system, etc.)
+
; <tt>comment_agent</tt> : (''文字列'') コメント投稿者のユーザーエージェント (ブラウザーやオペレーティングシステムなど)
; <tt>comment_type</tt> : (''string'') The comment's type if meaningfull (<tt>pingback|trackback</tt>), empty for normal comments
+
; <tt>comment_type</tt> : (''文字列'') 該当すればコメントの種類 (<tt>pingback|trackback</tt>), 普通のコメントなら空
; <tt>comment_parent</tt> : (''string'') The parent comment's ID for nested comments (0 for top level)
+
; <tt>comment_parent</tt> : (''文字列'') 入れ子になったコメントなら親コメントの ID (トップレベルなら0)
; <tt>user_id</tt> : (''integer'') The comment author's ID if s/he is registered (0 otherwise)
+
; <tt>user_id</tt> : (''整数'') コメント投稿者が登録済みならユーザー ID (未登録なら0)
  
 
== 用例<span id="Examples"></span> ==
 
== 用例<span id="Examples"></span> ==
177行目: 177行目:
 
== ソースファイル<span id="Source_File"></span> ==
 
== ソースファイル<span id="Source_File"></span> ==
  
<tt>get_comments()</tt> is located in {{Trac|wp-includes/comment.php}}.
+
<tt>get_comments()</tt> {{Trac|wp-includes/comment.php}} にあります。
  
 
== 関連項目<span id="Related"></span> ==
 
== 関連項目<span id="Related"></span> ==

2017年11月6日 (月) 22:25時点における最新版

この項目「関数リファレンス/get comments」は、翻訳チェック待ちの項目です。加筆、訂正などを通して、Codex ドキュメンテーションにご協力下さい。

説明

コメントのリストを取得します。

ブログ全体から、または個別投稿からコメントのリストを取得できます。

使い方

<?php get_comments( $args ); ?>

パラメータ

$args
文字列/配列) (オプション) 引数の配列または文字列。有効な引数の情報は WP_Comment_Query::parse_query() を見てください。
初期値: ''

引数

author_email
文字列) (オプション) コメント投稿者のメールアドレス。
初期値: 空
author__in
配列) (オプション) 含めるコメントの投稿者 ID の配列。
初期値: 空
author__not_in
配列) (オプション) 除外するコメントの投稿者 ID の配列。
初期値: 空
comment__in
配列) (オプション) 含めるコメントの ID の配列。
初期値: 空
comment__not_in
配列) (オプション) 除外するコメントの ID の配列。
初期値: 空
count
真偽値) (オプション) true ならコメント数、false ならコメントオブジェクトの配列を返す。
初期値: false
date_query
配列) (オプション) コメントを絞り込む日付クエリ。WP_Date_Query を見てください。
初期値: null
fields
文字列) (オプション) コメントの指定したフィールドを返す。'ids' ならコメント ID だけ、空ならすべてのフィールドを返す。
初期値: 空
ID
整数) (オプション現在使われていません。
初期値: なし
include_unapproved
配列) (オプション) コメントの status に関わらず、この配列で指定した ID またはメールアドレスの投稿者の未承認コメントを返す。
初期値: 空
karma
整数) (オプション) 指定したカルマ値のコメントを取得する。注: コメントのカルマ値は使われておらず常に0です。
初期値: 空
meta_key
文字列) (オプション) 指定したコメントメタ(カスタムフィールド)キーを持つコメントを含める。
初期値: 空
meta_value
文字列) (オプション) 指定したコメントメタ(カスタムフィールド)値を持つコメントをを含める。一緒に 'meta_key' を指定しなければならない。
初期値: 空
meta_query
配列) (オプション) コメントを絞り込むメタ(カスタムフィールド)クエリ。WP_Meta_Query を見てください。
初期値: 空
number
整数) (オプション) 取得するコメントの最大数。
初期値: null (無制限)
offset
整数) (0) クエリで取得するコメントのオフセット数。LIMIT 句の組み上げに使用。
初期値: なし
orderby
文字列&vert;配列) (オプション) 単一のコメントフィールド(文字列)またはコメントフィールドの配列。これを使うには 'meta_value' または 'meta_value_num''meta_key' を定義する必要がある。特定の meta_query 句で並べ替えるには、その句の配列キーを使ってください。
  • comment_agent
  • comment_approved
  • comment_author
  • comment_author_email
  • comment_author_IP
  • comment_author_url
  • comment_content
  • comment_date
  • comment_date_gmt
  • comment_ID
  • comment_karma
  • comment_parent
  • comment_post_ID
  • comment_type
  • user_id
  • meta_value
  • meta_value_num
  • meta_key の値
  • そして meta_query の配列キー
  • また false, 空の配列, 'none' のいずれかを指定すると ORDER BY 句を無効にする
  • 初期値: comment_date_gmt
order
文字列) (オプション) 取得するコメントの順序。次のいずれか:
  • ASC
  • DESC
  • .
    初期値: 'DESC'
parent
整数) (オプション) 指定した ID のコメントの子コメントを取得する。
初期値: 空
post_author__in
配列) (オプション) 指定した ID の投稿者によるコメントを取得する。
初期値: 空
post_author__not_in
配列) (オプション) 指定した ID の投稿者によるコメントを除いて取得する。
初期値: 空
post_ID
整数) (オプション現在使われていません。
初期値: なし
post_id
整数) (オプション) 指定した ID の投稿に対するコメントだけに制限する。
初期値: 0
post__in
配列) (オプション) 指定した配列内の ID を持つ投稿に対するコメントに制限する。
初期値: 空
post__not_in
配列) (オプション) 指定した配列内の ID を持つ投稿に対するコメントを除外する。
初期値: 空
post_author
整数) (オプション) 指定した投稿者によるコメントに絞る。
初期値: 空
post_status
文字列) (オプション) 指定した状態のコメントを取得する。
初期値: 空
post_type
文字列) (オプション) 指定した投稿タイプの投稿に対するコメントを取得する。
初期値: 空
post_name
文字列) (オプション) 指定した名前の投稿に対するコメントを取得する。
初期値: 空
post_parent
整数) (オプション) 指定した ID の投稿を親に持つ投稿に絞る。
初期値: 空
search
文字列) (オプション) 指定したタームを持つコメントを取得する。
初期値: 空
status
文字列) (オプション) 指定した状態のコメントに絞る。指定可能な状態は 'hold', 'approve', 'all' およびコメントのカスタム状態。
初期値: all
type
文字列&vert;配列) (オプション) 指定した種類(または種類の配列)のコメントを含める。'comment', 'pings' ('pingback' と 'trackback' を含む), またはカスタム種類の文字列。
初期値: 空
type__in
配列) (オプション) 指定した配列内のコメント種類のコメントを含める。
初期値: 空
type__not_in
配列) (オプション) 指定した配列内のコメント種類のコメントを除外する。
初期値: 空
user_id
整数) (オプション) 指定した ID のユーザーに対するコメントを含める。
初期値: 空

戻り値

(整数/配列) 
コメントのリスト(配列)。'count' 引数が true なら見つかったコメントの数。なお、各コメントは WP_Comment オブジェクトです。

WP_Comment オブジェクトの内容

comment_ID 
(整数) コメントの ID
comment_post_ID 
(整数) コメントが付いた投稿または固定ページの ID
comment_author 
(文字列) コメント投稿者の名前
comment_author_email 
(文字列) コメント投稿者のメールアドレス
comment_author_url 
(文字列) コメント投稿者のウェブサイト
comment_author_IP 
(文字列) コメント投稿者の IP アドレス
comment_date 
(文字列) コメントの日時 (YYYY-MM-DD HH:MM:SS)
comment_date_gmt 
(文字列) コメントの GMT 日時 (YYYY-MM-DD HH:MM:SS)
comment_content 
(文字列) コメント内容
comment_karma 
(整数) コメントのカルマ値 (訳注: 常に0です)
comment_approved 
(文字列) コメントの承認レベル (0, 1 または "spam")
comment_agent 
(文字列) コメント投稿者のユーザーエージェント (ブラウザーやオペレーティングシステムなど)
comment_type 
(文字列) 該当すればコメントの種類 (pingback|trackback), 普通のコメントなら空
comment_parent 
(文字列) 入れ子になったコメントなら親コメントの ID (トップレベルなら0)
user_id 
(整数) コメント投稿者が登録済みならユーザー ID (未登録なら0)

用例

コメントの作成者を表示します:

<?php 
$comments = get_comments( array( 'post_id' => 15 ) );
 
foreach ( $comments as $comment ) :
    echo $comment->comment_author;
endforeach;
?>

未承認のコメントを最新から5つ表示します:

<?php
$args = array(
    'status'  => 'hold',
    'number'  => '5',
    'post_id' => 1, // post_ID ではなく post_id を使う
);
$comments = get_comments( $args );
 
foreach ( $comments as $comment ) :
    echo $comment->comment_author . '<br />' . $comment->comment_content;
endforeach;
?>

ある投稿のコメントの数を表示します:

<?php
$args = array(
    'post_id' => 1,   // post_ID ではなく post_id を使う
    'count'   => true // 個数だけを返す
);
$comments_count = get_comments( $args );
echo $comments_count;
?>

あるユーザーのコメントの数を表示します:

<?php
$args = array(
    'user_id' => 1,   // user_id を使う
    'count'   => true // 個数だけを返す
);
$comments_count = get_comments( $args );
?>

あるユーザーのコメントを表示します:

<?php
$args = array(
    'user_id' => 1, // user_id を使う
);
$comments = get_comments( $args );
 
foreach ( $comments as $comment ) :
    echo $comment->comment_author . '<br />' . $comment->comment_content;
endforeach;
?>

最近4週間のコメントを取得します:

<?php
$args = array(
    'date_query' => array(
        'after' => '4 weeks ago', // 4週前より後
        'before' => 'tomorrow',   // 明日より前
        'inclusive' => true,      // 「ぴったり」を含める
    ),
);
 
$comments = get_comments( $args );
foreach ( $comments as $comment ) {
    // ここでコメントなどを出力
}
?>

重複したコメント(作成者と内容がどちらも同じ)を削除します:

<?php

// 個数の指定を空文字列にして承認済みコメントを全て取得
$all_comments=get_comments( array( 'status' => 'approve', 'number' => '' ) );

// 重複したコメントの id を保持する配列
$comment_ids_to_delete = array();

foreach ( $all_comments as $k=>$c )
{
	$kk = ( $k - 1 ); // 配列 all_comment 内にある直前のコメントのインデックス
	$pc = $all_comments[$kk]; // 直前のコメントのオブジェクト

	// コメントの作成者が同じで、さらに内容も同じなら、削除対象として配列へ追加
	if ( $pc->comment_author == $c->comment_author && $pc->comment_content == $c->comment_content ) {
		$comment_ids_to_delete[] = $pc->comment_ID; // 直前のコメントの id
	}
}

// コメントの id を指定して削除
foreach ( $comment_ids_to_delete as $k=>$v ) :
	wp_delete_comment($v);
endforeach;

?>

ソースファイル

get_comments()wp-includes/comment.php にあります。

関連項目


関数リファレンステンプレートタグ目次もご覧ください。


最新英語版: WordPress Codex » Function Reference/get_comments最新版との差分