WP_Comment_Query::__construct() WordPress Method
The WP_Comment_Query::__construct() method allows you to queries for comments. It takes in a number of parameters that can be used to customize the query.
WP_Comment_Query::__construct( string|array $query = '' ) #
Constructor.
Description
Sets up the comment query, based on the query vars passed.
Parameters
- $query
(string|array)(Optional)Array or query string of comment query parameters.
- 'author_email'
(string) Comment author email address. - 'author_url'
(string) Comment author URL. - 'author__in'
(int[]) Array of author IDs to include comments for. - 'author__not_in'
(int[]) Array of author IDs to exclude comments for. - 'comment__in'
(int[]) Array of comment IDs to include. - 'comment__not_in'
(int[]) Array of comment IDs to exclude. - 'count'
(bool) Whether to return a comment count (true) or array of comment objects (false). Default false. - 'date_query'
(array) Date query clauses to limit comments by. See WP_Date_Query. Default null. - 'fields'
(string) Comment fields to return. Accepts 'ids' for comment IDs only or empty for all fields. - 'ID'
(int) Currently unused. - 'include_unapproved'
(array) Array of IDs or email addresses of users whose unapproved comments will be returned by the query regardless of$status
. - 'karma'
(int) Karma score to retrieve matching comments for. - 'meta_key'
(string|string[]) Meta key or keys to filter by. - 'meta_value'
(string|string[]) Meta value or values to filter by. - 'meta_compare'
(string) MySQL operator used for comparing the meta value. See WP_Meta_Query::__construct for accepted values and default value. - 'meta_compare_key'
(string) MySQL operator used for comparing the meta key. See WP_Meta_Query::__construct for accepted values and default value. - 'meta_type'
(string) MySQL data type that the meta_value column will be CAST to for comparisons. See WP_Meta_Query::__construct for accepted values and default value. - 'meta_type_key'
(string) MySQL data type that the meta_key column will be CAST to for comparisons. See WP_Meta_Query::__construct for accepted values and default value. - 'meta_query'
(array) An associative array of WP_Meta_Query arguments. See WP_Meta_Query::__construct for accepted values. - 'number'
(int) Maximum number of comments to retrieve. Default empty (no limit). - 'paged'
(int) When used with$number
, defines the page of results to return. When used with$offset
,$offset
takes precedence. Default 1. - 'offset'
(int) Number of comments to offset the query. Used to build LIMIT clause. Default 0. - 'no_found_rows'
(bool) Whether to disable theSQL_CALC_FOUND_ROWS
query. Default: true. - 'orderby'
(string|array) Comment status or array of statuses. 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. Accepts:- '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'
- 'comment__in'
- 'meta_value'
- 'meta_value_num'
- The value of
$meta_key
- The array keys of
$meta_query
- false, an empty array, or 'none' to disable
ORDER BY
clause. Default: 'comment_date_gmt'.
- 'order'
(string) How to order retrieved comments. Accepts 'ASC', 'DESC'. Default: 'DESC'. - 'parent'
(int) Parent ID of comment to retrieve children of. - 'parent__in'
(int[]) Array of parent IDs of comments to retrieve children for. - 'parent__not_in'
(int[]) Array of parent IDs of comments *not* to retrieve children for. - 'post_author__in'
(int[]) Array of author IDs to retrieve comments for. - 'post_author__not_in'
(int[]) Array of author IDs *not* to retrieve comments for. - 'post_ID'
(int) Currently unused. - 'post_id'
(int) Limit results to those affiliated with a given post ID. Default 0. - 'post__in'
(int[]) Array of post IDs to include affiliated comments for. - 'post__not_in'
(int[]) Array of post IDs to exclude affiliated comments for. - 'post_author'
(int) Post author ID to limit results by. - 'post_status'
(string|string[]) Post status or array of post statuses to retrieve affiliated comments for. Pass 'any' to match any value. - 'post_type'
(string|string[]) Post type or array of post types to retrieve affiliated comments for. Pass 'any' to match any value. - 'post_name'
(string) Post name to retrieve affiliated comments for. - 'post_parent'
(int) Post parent ID to retrieve affiliated comments for. - 'search'
(string) Search term(s) to retrieve matching comments for. - 'status'
(string|array) Comment statuses to limit results by. Accepts an array or space/comma-separated list of 'hold' (comment_status=0
), 'approve' (comment_status=1
), 'all', or a custom comment status. Default 'all'. - 'type'
(string|string[]) Include comments of a given type, or array of types. Accepts 'comment', 'pings' (includes 'pingback' and 'trackback'), or any custom type string. - 'type__in'
(string[]) Include comments from a given array of comment types. - 'type__not_in'
(string[]) Exclude comments from a given array of comment types. - 'user_id'
(int) Include comments for a specific user ID. - 'hierarchical'
(bool|string) Whether to include comment descendants in the results. - 'threaded' returns a tree, with each comment's children stored in a
children
property on theWP_Comment
object. - 'flat' returns a flat array of found comments plus their children.
- Boolean
false
leaves out descendants. The parameter is ignored (forced tofalse
) when$fields
is 'ids' or 'counts'. Accepts 'threaded', 'flat', or false. Default: false.
- 'cache_domain'
(string) Unique cache key to be produced when this query is stored in an object cache. Default is 'core'.- 'update_comment_meta_cache'
(bool) Whether to prime the metadata cache for found comments. Default true.- 'update_comment_post_cache'
(bool) Whether to prime the cache for comment posts. Default false.Default value: ''
- 'author_email'
Source
File: wp-includes/class-wp-comment-query.php
public function __construct( $query = '' ) { $this->query_var_defaults = array( 'author_email' => '', 'author_url' => '', 'author__in' => '', 'author__not_in' => '', 'include_unapproved' => '', 'fields' => '', 'ID' => '', 'comment__in' => '', 'comment__not_in' => '', 'karma' => '', 'number' => '', 'offset' => '', 'no_found_rows' => true, 'orderby' => '', 'order' => 'DESC', 'paged' => 1, 'parent' => '', 'parent__in' => '', 'parent__not_in' => '', 'post_author__in' => '', 'post_author__not_in' => '', 'post_ID' => '', 'post_id' => 0, 'post__in' => '', 'post__not_in' => '', 'post_author' => '', 'post_name' => '', 'post_parent' => '', 'post_status' => '', 'post_type' => '', 'status' => 'all', 'type' => '', 'type__in' => '', 'type__not_in' => '', 'user_id' => '', 'search' => '', 'count' => false, 'meta_key' => '', 'meta_value' => '', 'meta_query' => '', 'date_query' => null, // See WP_Date_Query. 'hierarchical' => false, 'cache_domain' => 'core', 'update_comment_meta_cache' => true, 'update_comment_post_cache' => false, ); if ( ! empty( $query ) ) { $this->query( $query ); } }
Expand full source codeCollapse full source codeView on TracView on GitHub
Changelog
Version | Description |
---|---|
5.3.0 | Introduced the $meta_type_key argument. |
5.1.0 | Introduced the $meta_compare_key argument. |
4.9.0 | Introduced the $paged argument. |
4.6.0 | Introduced the $cache_domain argument. |
4.5.0 | Introduced the $author_url argument. |
4.4.0 | Order by comment__in was added. $update_comment_meta_cache , $no_found_rows , $hierarchical , and $update_comment_post_cache were added. |
4.2.0 | Introduced. |