WP_REST_Meta_Fields::delete_meta_value( int $object_id, string $meta_key, string $name )

Deletes a meta value for an object.

Description Description

Parameters Parameters


(int) (Required) Object ID the field belongs to.


(string) (Required) Key for the field.


(string) (Required) Name for the field that is exposed in the REST API.

Top ↑

Return Return

(bool|WP_Error) True if meta field is deleted, WP_Error otherwise.

Top ↑

Source Source

File: wp-includes/rest-api/fields/class-wp-rest-meta-fields.php

	protected function delete_meta_value( $object_id, $meta_key, $name ) {
		$meta_type = $this->get_meta_type();
		if ( ! current_user_can( "delete_{$meta_type}_meta", $object_id, $meta_key ) ) {
			return new WP_Error(
				/* translators: %s: custom field key */
				sprintf( __( 'Sorry, you are not allowed to edit the %s custom field.' ), $name ),
				array( 'key' => $name, 'status' => rest_authorization_required_code() )

		if ( ! delete_metadata( $meta_type, $object_id, wp_slash( $meta_key ) ) ) {
			return new WP_Error(
				__( 'Could not delete meta value from database.' ),
				array( 'key' => $name, 'status' => WP_Http::INTERNAL_SERVER_ERROR )

		return true;

Top ↑

Changelog Changelog

Version Description
4.7.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

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