WP_REST_Meta_Fields::prepare_value()public staticWP 4.7.0

Prepares a meta value for output.

Default preparation for meta fields. Override by passing the prepare_callback in your show_in_rest options.

Method of the class: WP_REST_Meta_Fields{}

No Hooks.

Return

Mixed. Value prepared for output. If a non-JsonSerializable object, null.

Usage

$result = WP_REST_Meta_Fields::prepare_value( $value, $request, $args );
$value(mixed) (required)
Meta value from the database.
$request(WP_REST_Request) (required)
Request object.
$args(array) (required)
REST-specific options for the meta key.

Changelog

Since 4.7.0 Introduced.

WP_REST_Meta_Fields::prepare_value() code WP 6.5.2

public static function prepare_value( $value, $request, $args ) {
	if ( $args['single'] ) {
		$schema = $args['schema'];
	} else {
		$schema = $args['schema']['items'];
	}

	if ( '' === $value && in_array( $schema['type'], array( 'boolean', 'integer', 'number' ), true ) ) {
		$value = static::get_empty_value_for_type( $schema['type'] );
	}

	if ( is_wp_error( rest_validate_value_from_schema( $value, $schema ) ) ) {
		return null;
	}

	return rest_sanitize_value_from_schema( $value, $schema );
}