Aggiorna i valori dei meta.

Parametri

$meta

(array)(Richiesto)Array di meta analizzati dalla richiesta.

$oggetto_id

(int)(Richiesto)ID dell'oggetto per cui recuperare i meta.

Ritorno

(null|WP_Error) Null in caso di successo, oggetto WP_Error in caso di fallimento.

Fonte

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

publicfunctionupdate_value($meta,$object_id){$fields=$this->get_registered_fields();foreach($fieldsas$meta_key=>$args){$name=$args['name'];if(!array_key_exists($name,$meta)){continue;}$value=$meta[$name];/*
			 * A null value means reset the field, which is essentially deleting it
			 * from the database and then relying on the default value.
			 *
			 * Non-single meta can also be removed by passing an empty array.
			 */if(is_null($value)||(array()===$value&&!$args['single'])){$args=$this->get_registered_fields()[$meta_key];if($args['single']){$current=get_metadata($this->get_meta_type(),$object_id,$meta_key,true);if(is_wp_error(rest_validate_value_from_schema($current,$args['schema']))){returnnewWP_Error('rest_invalid_stored_value',/* translators: %s: Custom field key. */sprintf(__('The %s property has an invalid stored value, and cannot be updated to null.'),$name),array('status'=>500));}}$result=$this->delete_meta_value($object_id,$meta_key,$name);if(is_wp_error($result)){return$result;}continue;}if(!$args['single']&&is_array($value)&&count(array_filter($value,'is_null'))){returnnewWP_Error('rest_invalid_stored_value',/* translators: %s: Custom field key. */sprintf(__('The %s property has an invalid stored value, and cannot be updated to null.'),$name),array('status'=>500));}$is_valid=rest_validate_value_from_schema($value,$args['schema'],'meta.'$name);if(is_wp_error($is_valid)){$is_valid->add_data(array('status'=>400));return$is_valid;}$value=rest_sanitize_value_from_schema($value,$args['schema']);if($args['single']){$result=$this->update_meta_value($object_id,$meta_key,$name,$value);}else{$result=$this->update_multi_meta_value($object_id,$meta_key,$name,$value);}if(is_wp_error($result)){return$result;}}returnnull;}

Correlato

Utilizzi

Usi Descrizione
wp-includes/rest-api.php: rest_sanitize_value_from_schema()

Sanitizza un valore basato su uno schema.

wp-includes/rest-api.php: rest_validate_value_from_schema()

Convalida un valore basato su uno schema.

wp-includes/rest-api/fields/class-wp-rest-meta-fields.php: WP_REST_Meta_Fields::get_registered_fields()

Recupera tutti i meta-campi registrati.

wp-includes/rest-api/fields/class-wp-rest-meta-fields.php: WP_REST_Meta_Fields::delete_meta_value()

Cancella un valore meta per un oggetto.

wp-includes/rest-api/fields/class-wp-rest-meta-fields.php: WP_REST_Meta_Fields::update_meta_value()

Aggiorna un valore meta per un oggetto.

wp-includes/rest-api/fields/class-wp-rest-meta-fields.php: WP_REST_Meta_Fields::update_multi_meta_value()

Aggiorna più valori meta per un oggetto.

wp-includes/rest-api/fields/class-wp-rest-meta-fields.php: WP_REST_Meta_Fields::get_meta_type()

Recupera il meta-tipo dell'oggetto.

wp-includes/l10n.php: __()

Recupera la traduzione di $testo.

wp-includes/meta.php: get_metadata()

Recupera il valore di un campo di metadati per il tipo di oggetto e l'ID specificati.

wp-includes/load.php: is_wp_error()

Controlla se la variabile data è un errore di WordPress.

wp-includes/class-wp-error.php: WP_Error::__construct()

Inizializza l'errore.

Changelog

Versione Descrizione
4.7.0 Introdotto.