WP_REST_Meta_Fields::get_value( int $object_id, WP_REST_Request $request ): array

In this article

Retrieves the meta field value.

Parameters

$object_idintrequired
Object ID to fetch meta for.
$requestWP_REST_Requestrequired
Full details about the request.

Return

array Array containing the meta values keyed by name.

Source

public function get_value( $object_id, $request ) {
	$fields   = $this->get_registered_fields();
	$response = array();

	foreach ( $fields as $meta_key => $args ) {
		$name       = $args['name'];
		$all_values = get_metadata( $this->get_meta_type(), $object_id, $meta_key, false );

		if ( $args['single'] ) {
			if ( empty( $all_values ) ) {
				$value = $args['schema']['default'];
			} else {
				$value = $all_values[0];
			}

			$value = $this->prepare_value_for_response( $value, $request, $args );
		} else {
			$value = array();

			if ( is_array( $all_values ) ) {
				foreach ( $all_values as $row ) {
					$value[] = $this->prepare_value_for_response( $row, $request, $args );
				}
			}
		}

		$response[ $name ] = $value;
	}

	return $response;
}

Changelog

VersionDescription
4.7.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.