register_rest_field( string|array $object_type, string $attribute, array $args = array() )

Registers a new field on an existing ClassicPress object type.


Parameters

$object_type

(string|array) (Required) Object(s) the field is being registered to, "post"|"term"|"comment" etc.

$attribute

(string) (Required) The attribute name.

$args

(array) (Optional) An array of arguments used to handle the registered field.

  • 'get_callback'
    (string|array|null) Optional. The callback function used to retrieve the field value. Default is 'null', the field will not be returned in the response.
  • 'update_callback'
    (string|array|null) Optional. The callback function used to set and update the field value. Default is 'null', the value cannot be set or updated.
  • 'schema'
    (string|array|null) Optional. The callback function used to create the schema for this field. Default is 'null', no schema entry will be returned.

Default value: array()


Source

File: wp-includes/rest-api.php

function register_rest_field( $object_type, $attribute, $args = array() ) {
	$defaults = array(
		'get_callback'    => null,
		'update_callback' => null,
		'schema'          => null,
	);

	$args = wp_parse_args( $args, $defaults );

	global $wp_rest_additional_fields;

	$object_types = (array) $object_type;

	foreach ( $object_types as $object_type ) {
		$wp_rest_additional_fields[ $object_type ][ $attribute ] = $args;
	}
}


Changelog

Changelog
Version Description
WP-4.7.0 Introduced.