Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- add_filter( 'rest_record_query', 'filter_records_by_source_field', 999, 2 );
- function filter_records_by_source_field( $args, $request ) {
- $filter_params = ['test'];
- $active_params = [];
- foreach ( $filter_params as $filter_param ) {
- if ( isset( $request[$filter_param] ) ) {
- $active_params[] = $filter_param;
- }
- }
- if ( count( $active_params ) === 0 ) {
- return $args;
- }
- $meta_query = array();
- if ( isset( $args['meta_query'] ) ) {
- $meta_query = $args['meta_query'];
- }
- $meta_query['relation'] = 'AND';
- foreach ( $active_params as $param ) {
- $meta_query[] = array(
- 'key' => $param,
- 'value' => sanitize_text_field( $request[$param] )
- );
- }
- $args['meta_query'] = $meta_query;
- return $args;
- }
Advertisement
Add Comment
Please, Sign In to add comment