wpseek.com
Outil de recherche WordPress pour les développeurs et auteurs de thèmes
rest_filter_response_fields › WordPress Function
Depuis4.8.0
Dépréciéen/a
› rest_filter_response_fields ( $response, $server, $request )
Paramètres: (3) |
|
Retourne: |
|
Défini(e) dans: |
|
Codex: |
Filter the API response to include only a white-listed set of response object fields.
Fonctions en relation: register_rest_field, rest_ensure_response, sanitize_post_field, get_term_field, get_oembed_response_data
Source
function rest_filter_response_fields( $response, $server, $request ) { if ( ! isset( $request['_fields'] ) || $response->is_error() ) { return $response; } $data = $response->get_data(); $fields = is_array( $request['_fields'] ) ? $request['_fields'] : preg_split( '/[\s,]+/', $request['_fields'] ); if ( 0 === count( $fields ) ) { return $response; } // Trim off outside whitespace from the comma delimited list. $fields = array_map( 'trim', $fields ); $fields_as_keyed = array_combine( $fields, array_fill( 0, count( $fields ), true ) ); if ( wp_is_numeric_array( $data ) ) { $new_data = array(); foreach ( $data as $item ) { $new_data[] = array_intersect_key( $item, $fields_as_keyed ); } } else { $new_data = array_intersect_key( $data, $fields_as_keyed ); } $response->set_data( $new_data ); return $response; }