update_term_meta( int $term_id, string $meta_key, mixed $meta_value, mixed $prev_value =  ): int|bool|WP_Error

Updates term metadata.

Description

Use the $prev_value parameter to differentiate between meta fields with the same key and term ID.

If the meta field for the term does not exist, it will be added.

Parameters

$term_idintrequired
Term ID.
$meta_keystringrequired
Metadata key.
$meta_valuemixedrequired
Metadata value. Must be serializable if non-scalar.
$prev_valuemixedoptional
Previous value to check before updating.
If specified, only update existing metadata entries with this value. Otherwise, update all entries.

Default:''

Return

int|bool|WP_Error Meta ID if the key didn’t exist. true on successful update, false on failure or if the value passed to the function is the same as the one that is already in the database.
WP_Error when term_id is ambiguous between taxonomies.

Source

function update_term_meta( $term_id, $meta_key, $meta_value, $prev_value = '' ) {
	if ( wp_term_is_shared( $term_id ) ) {
		return new WP_Error( 'ambiguous_term_id', __( 'Term meta cannot be added to terms that are shared between taxonomies.' ), $term_id );
	}

	return update_metadata( 'term', $term_id, $meta_key, $meta_value, $prev_value );
}

Changelog

VersionDescription
4.4.0Introduced.

User Contributed Notes

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