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 |
|---|---|
| 428 | * Allows modification of the response before returning. |
| 429 | * |
| 430 | * @since 4.4.0 |
| 431 | * @since 4.5.0 Applied to embedded responses. |
| 432 | * |
| 433 | * @param WP_HTTP_Response $result Result to send to the client. Usually a `WP_REST_Response`. |
| 434 | * @param WP_REST_Server $server Server instance. |
| 435 | * @param WP_REST_Request $request Request used to generate the response. |
| 436 | */ |
| 437 | $result = apply_filters( 'rest_post_dispatch', rest_ensure_response( $result ), $this, $request ); |
| 438 | |
| 439 | // Wrap the response in an envelope if asked for. |
| 440 | if ( isset( $_GET['_envelope'] ) ) { |
| 441 | $embed = isset( $_GET['_embed'] ) ? rest_parse_embed_param( $_GET['_embed'] ) : false; |
| 442 | $result = $this->envelope_response( $result, $embed ); |
| 443 | } |
| 444 | |
| 445 | // Send extra data from response objects. |
| 446 | $headers = $result->get_headers(); |
| Line | Code |
| 694 | |
| 695 | // Embedded resources get passed context=embed. |
| 696 | if ( empty( $request['context'] ) ) { |
| 697 | $request['context'] = 'embed'; |
| 698 | } |
| 699 | |
| 700 | $response = $this->dispatch( $request ); |
| 701 | |
| 702 | /** This filter is documented in wp-includes/rest-api/class-wp-rest-server.php */ |
| 703 | $response = apply_filters( 'rest_post_dispatch', rest_ensure_response( $response ), $this, $request ); |
| 704 | |
| 705 | $this->embed_cache[ $item['href'] ] = $this->response_to_data( $response, false ); |
| 706 | } |
| 707 | |
| 708 | $embeds[] = $this->embed_cache[ $item['href'] ]; |
| 709 | } |
| 710 | |
| 711 | // Determine if any real links were found. |
| 712 | $has_links = count( array_filter( $embeds ) ); |
| Line | Code |
| 1672 | array( 'status' => 500 ) |
| 1673 | ); |
| 1674 | } |
| 1675 | |
| 1676 | $result = $this->respond_to_request( $single_request, $route, $handler, $error ); |
| 1677 | } |
| 1678 | } |
| 1679 | |
| 1680 | /** This filter is documented in wp-includes/rest-api/class-wp-rest-server.php */ |
| 1681 | $result = apply_filters( 'rest_post_dispatch', rest_ensure_response( $result ), $this, $single_request ); |
| 1682 | |
| 1683 | $responses[] = $this->envelope_response( $result, false )->get_data(); |
| 1684 | } |
| 1685 | |
| 1686 | return new WP_REST_Response( array( 'responses' => $responses ), WP_Http::MULTI_STATUS ); |
| 1687 | } |
| 1688 | |
| 1689 | /** |
| 1690 | * Sends an HTTP status code. |