WP_REST_Comments_Controller::get_collection_params(): array

In this article

Retrieves the query params for collections.

Return

array Comments collection parameters.

Source

public function get_collection_params() {
	$query_params = parent::get_collection_params();

	$query_params['context']['default'] = 'view';

	$query_params['after'] = array(
		'description' => __( 'Limit response to comments published after a given ISO8601 compliant date.' ),
		'type'        => 'string',
		'format'      => 'date-time',
	);

	$query_params['author'] = array(
		'description' => __( 'Limit result set to comments assigned to specific user IDs. Requires authorization.' ),
		'type'        => 'array',
		'items'       => array(
			'type' => 'integer',
		),
	);

	$query_params['author_exclude'] = array(
		'description' => __( 'Ensure result set excludes comments assigned to specific user IDs. Requires authorization.' ),
		'type'        => 'array',
		'items'       => array(
			'type' => 'integer',
		),
	);

	$query_params['author_email'] = array(
		'default'     => null,
		'description' => __( 'Limit result set to that from a specific author email. Requires authorization.' ),
		'format'      => 'email',
		'type'        => 'string',
	);

	$query_params['before'] = array(
		'description' => __( 'Limit response to comments published before a given ISO8601 compliant date.' ),
		'type'        => 'string',
		'format'      => 'date-time',
	);

	$query_params['exclude'] = array(
		'description' => __( 'Ensure result set excludes specific IDs.' ),
		'type'        => 'array',
		'items'       => array(
			'type' => 'integer',
		),
		'default'     => array(),
	);

	$query_params['include'] = array(
		'description' => __( 'Limit result set to specific IDs.' ),
		'type'        => 'array',
		'items'       => array(
			'type' => 'integer',
		),
		'default'     => array(),
	);

	$query_params['offset'] = array(
		'description' => __( 'Offset the result set by a specific number of items.' ),
		'type'        => 'integer',
	);

	$query_params['order'] = array(
		'description' => __( 'Order sort attribute ascending or descending.' ),
		'type'        => 'string',
		'default'     => 'desc',
		'enum'        => array(
			'asc',
			'desc',
		),
	);

	$query_params['orderby'] = array(
		'description' => __( 'Sort collection by comment attribute.' ),
		'type'        => 'string',
		'default'     => 'date_gmt',
		'enum'        => array(
			'date',
			'date_gmt',
			'id',
			'include',
			'post',
			'parent',
			'type',
		),
	);

	$query_params['parent'] = array(
		'default'     => array(),
		'description' => __( 'Limit result set to comments of specific parent IDs.' ),
		'type'        => 'array',
		'items'       => array(
			'type' => 'integer',
		),
	);

	$query_params['parent_exclude'] = array(
		'default'     => array(),
		'description' => __( 'Ensure result set excludes specific parent IDs.' ),
		'type'        => 'array',
		'items'       => array(
			'type' => 'integer',
		),
	);

	$query_params['post'] = array(
		'default'     => array(),
		'description' => __( 'Limit result set to comments assigned to specific post IDs.' ),
		'type'        => 'array',
		'items'       => array(
			'type' => 'integer',
		),
	);

	$query_params['status'] = array(
		'default'           => 'approve',
		'description'       => __( 'Limit result set to comments assigned a specific status. Requires authorization.' ),
		'sanitize_callback' => 'sanitize_key',
		'type'              => 'string',
		'validate_callback' => 'rest_validate_request_arg',
	);

	$query_params['type'] = array(
		'default'           => 'comment',
		'description'       => __( 'Limit result set to comments assigned a specific type. Requires authorization.' ),
		'sanitize_callback' => 'sanitize_key',
		'type'              => 'string',
		'validate_callback' => 'rest_validate_request_arg',
	);

	$query_params['password'] = array(
		'description' => __( 'The password for the post if it is password protected.' ),
		'type'        => 'string',
	);

	/**
	 * Filters REST API collection parameters for the comments controller.
	 *
	 * This filter registers the collection parameter, but does not map the
	 * collection parameter to an internal WP_Comment_Query parameter. Use the
	 * `rest_comment_query` filter to set WP_Comment_Query parameters.
	 *
	 * @since 4.7.0
	 *
	 * @param array $query_params JSON Schema-formatted collection parameters.
	 */
	return apply_filters( 'rest_comment_collection_params', $query_params );
}

Hooks

apply_filters( ‘rest_comment_collection_params’, array $query_params )

Filters REST API collection parameters for the comments controller.

Changelog

VersionDescription
4.7.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.