Skip to content

Filter: bricks/query_filters/range_custom_field_meta_query

Filters the meta_query generated for a range filter (slider) targeting a custom field. This allows you to customize how the range comparison is performed (e.g., handling decimal values, changing the data type).

  • $meta_query (array): The generated meta_query array (e.g., ['key' => '...', 'value' => [min, max], 'compare' => 'BETWEEN', 'type' => 'NUMERIC']).
  • $filter (array): The active filter data, including settings and selected min/max values.
  • $provider (string): The data provider (e.g., acf, metabox).
  • $query_id (string): The ID of the query loop being filtered.
add_filter( 'bricks/query_filters/range_custom_field_meta_query', function( $meta_query, $filter, $provider, $query_id ) {
// Example: Change type to 'DECIMAL' for precise price filtering
if ( $filter['settings']['fieldName'] === 'product_price' ) {
$meta_query['type'] = 'DECIMAL(10,2)';
}
return $meta_query;
}, 10, 4 );