WP_REST_Font_Collections_Controller::prepare_item_for_response()publicWP 6.5.0

Prepare a single collection output for response.

Метод класса: WP_REST_Font_Collections_Controller{}

Хуки из метода

Возвращает

WP_REST_Response|WP_Error. Response object on success, or WP_Error object on failure.

Использование

$WP_REST_Font_Collections_Controller = new WP_REST_Font_Collections_Controller();
$WP_REST_Font_Collections_Controller->prepare_item_for_response( $item, $request );
$item(WP_Font_Collection) (обязательный)
Font collection object.
$request(WP_REST_Request) (обязательный)
Request object.

Список изменений

С версии 6.5.0 Введена.

Код WP_REST_Font_Collections_Controller::prepare_item_for_response() WP 6.7.1

public function prepare_item_for_response( $item, $request ) {
	$fields = $this->get_fields_for_response( $request );
	$data   = array();

	if ( rest_is_field_included( 'slug', $fields ) ) {
		$data['slug'] = $item->slug;
	}

	// If any data fields are requested, get the collection data.
	$data_fields = array( 'name', 'description', 'font_families', 'categories' );
	if ( ! empty( array_intersect( $fields, $data_fields ) ) ) {
		$collection_data = $item->get_data();
		if ( is_wp_error( $collection_data ) ) {
			$collection_data->add_data( array( 'status' => 500 ) );
			return $collection_data;
		}

		foreach ( $data_fields as $field ) {
			if ( rest_is_field_included( $field, $fields ) ) {
				$data[ $field ] = $collection_data[ $field ];
			}
		}
	}

	$response = rest_ensure_response( $data );

	if ( rest_is_field_included( '_links', $fields ) ) {
		$links = $this->prepare_links( $item );
		$response->add_links( $links );
	}

	$context        = ! empty( $request['context'] ) ? $request['context'] : 'view';
	$response->data = $this->add_additional_fields_to_object( $response->data, $request );
	$response->data = $this->filter_response_by_context( $response->data, $context );

	/**
	 * Filters the font collection data for a REST API response.
	 *
	 * @since 6.5.0
	 *
	 * @param WP_REST_Response   $response The response object.
	 * @param WP_Font_Collection $item     The font collection object.
	 * @param WP_REST_Request    $request  Request used to generate the response.
	 */
	return apply_filters( 'rest_prepare_font_collection', $response, $item, $request );
}