W3cubDocs

/WordPress

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

Registers a new field on an existing WordPress 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'
    (callable|null) Optional. The callback function used to retrieve the field value. Default is 'null', the field will not be returned in the response. The function will be passed the prepared object data.
  • 'update_callback'
    (callable|null) Optional. The callback function used to set and update the field value. Default is 'null', the value cannot be set or updated. The function will be passed the model object, like WP_Post.
  • 'schema'
    (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

Version Description
4.7.0 Introduced.

© 2003–2019 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/register_rest_field