rest_(post_type)_collection_params filter-hookWC 1.0

Filter collection parameters for the posts controller.

The dynamic part of the filter $this->post_type refers to the post type slug for the controller.

This filter registers the collection parameter, but does not map the collection parameter to an internal WP_Query parameter. Use the rest_{$this->post_type}_query filter to set WP_Query parameters.


add_filter( 'rest_(post_type)_collection_params', 'wp_kama_rest_post_type_collection_params_filter', 10, 2 );

 * Function for `rest_(post_type)_collection_params` filter-hook.
 * @param array        $query_params JSON Schema-formatted collection parameters.
 * @param WP_Post_Type $post_type    Post type object.
 * @return array
function wp_kama_rest_post_type_collection_params_filter( $query_params, $post_type ){

	// filter...
	return $query_params;
JSON Schema-formatted collection parameters.
Post type object.

Where the hook is called

woocommerce/includes/rest-api/Controllers/Version3/class-wc-rest-crud-controller.php 691
return apply_filters( "rest_{$this->post_type}_collection_params", $params, $this->post_type );

Where the hook is used in WooCommerce

woocommerce/src/Blocks/BlockTypes/ProductCollection.php 77
add_filter( 'rest_product_collection_params', array( $this, 'extend_rest_query_allowed_params' ), 10, 1 );
woocommerce/src/Blocks/BlockTypes/ProductQuery.php 82
add_filter( 'rest_product_collection_params', array( $this, 'extend_rest_query_allowed_params' ), 10, 1 );