WP hooks navigation: Home/browse • Actions index • Filters index
To save our bandwidth, we show only a snippet of code around each occurence of the hook. View complete file in SVN (without highlighting).
The best way to understand what a hook does is to look at where it occurs in the source code.
do_action( "hook_name" )apply_filters( "hook_name", "what_to_filter" ).Remember, this hook may occur in more than one file. Moreover, the hook's context may change from version to version.
This hook occurs 3 times in this file.
| Line | Code |
|---|---|
| 461 | * Allows modification of the response before returning. |
| 462 | * |
| 463 | * @since 4.4.0 |
| 464 | * @since 4.5.0 Applied to embedded responses. |
| 465 | * |
| 466 | * @param WP_HTTP_Response $result Result to send to the client. Usually a `WP_REST_Response`. |
| 467 | * @param WP_REST_Server $server Server instance. |
| 468 | * @param WP_REST_Request $request Request used to generate the response. |
| 469 | */ |
| 470 | $result = apply_filters( 'rest_post_dispatch', rest_ensure_response( $result ), $this, $request ); |
| 471 | |
| 472 | // Wrap the response in an envelope if asked for. |
| 473 | if ( isset( $_GET['_envelope'] ) ) { |
| 474 | $embed = isset( $_GET['_embed'] ) ? rest_parse_embed_param( $_GET['_embed'] ) : false; |
| 475 | $result = $this->envelope_response( $result, $embed ); |
| 476 | } |
| 477 | |
| 478 | // Send extra data from response objects. |
| 479 | $headers = $result->get_headers(); |
| Line | Code |
| 729 | |
| 730 | // Embedded resources get passed context=embed. |
| 731 | if ( empty( $request['context'] ) ) { |
| 732 | $request['context'] = 'embed'; |
| 733 | } |
| 734 | |
| 735 | $response = $this->dispatch( $request ); |
| 736 | |
| 737 | /** This filter is documented in wp-includes/rest-api/class-wp-rest-server.php */ |
| 738 | $response = apply_filters( 'rest_post_dispatch', rest_ensure_response( $response ), $this, $request ); |
| 739 | |
| 740 | $this->embed_cache[ $item['href'] ] = $this->response_to_data( $response, false ); |
| 741 | } |
| 742 | |
| 743 | $embeds[] = $this->embed_cache[ $item['href'] ]; |
| 744 | } |
| 745 | |
| 746 | // Determine if any real links were found. |
| 747 | $has_links = count( array_filter( $embeds ) ); |
| Line | Code |
| 1724 | array( 'status' => 500 ) |
| 1725 | ); |
| 1726 | } |
| 1727 | |
| 1728 | $result = $this->respond_to_request( $single_request, $route, $handler, $error ); |
| 1729 | } |
| 1730 | } |
| 1731 | |
| 1732 | /** This filter is documented in wp-includes/rest-api/class-wp-rest-server.php */ |
| 1733 | $result = apply_filters( 'rest_post_dispatch', rest_ensure_response( $result ), $this, $single_request ); |
| 1734 | |
| 1735 | $responses[] = $this->envelope_response( $result, false )->get_data(); |
| 1736 | } |
| 1737 | |
| 1738 | return new WP_REST_Response( array( 'responses' => $responses ), WP_Http::MULTI_STATUS ); |
| 1739 | } |
| 1740 | |
| 1741 | /** |
| 1742 | * Sends an HTTP status code. |