WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru
функция не описана

WC_Data::update_meta_data() public WC 2.6.0

Update meta data by key or ID, if provided.

{} Это метод класса: WC_Data{}

Хуков нет.

Возвращает

Null. Ничего.

Использование

$WC_Data = new WC_Data();
$WC_Data->update_meta_data( $key, $value, $meta_id );
$key(строка) (обязательный)
Meta key.
$value(строка/массив) (обязательный)
Meta value.
$meta_id(число)
Meta ID.
По умолчанию: 0

Список изменений

С версии 2.6.0 Введена.

Код WC_Data::update_meta_data() WC 4.7.0

<?php
public function update_meta_data( $key, $value, $meta_id = 0 ) {
	if ( $this->is_internal_meta_key( $key ) ) {
		$function = 'set_' . $key;

		if ( is_callable( array( $this, $function ) ) ) {
			return $this->{$function}( $value );
		}
	}

	$this->maybe_read_meta_data();

	$array_key = false;

	if ( $meta_id ) {
		$array_keys = array_keys( wp_list_pluck( $this->meta_data, 'id' ), $meta_id, true );
		$array_key  = $array_keys ? current( $array_keys ) : false;
	} else {
		// Find matches by key.
		$matches = array();
		foreach ( $this->meta_data as $meta_data_array_key => $meta ) {
			if ( $meta->key === $key ) {
				$matches[] = $meta_data_array_key;
			}
		}

		if ( ! empty( $matches ) ) {
			// Set matches to null so only one key gets the new value.
			foreach ( $matches as $meta_data_array_key ) {
				$this->meta_data[ $meta_data_array_key ]->value = null;
			}
			$array_key = current( $matches );
		}
	}

	if ( false !== $array_key ) {
		$meta        = $this->meta_data[ $array_key ];
		$meta->key   = $key;
		$meta->value = $value;
	} else {
		$this->add_meta_data( $key, $value, true );
	}
}