Automattic\WooCommerce\Utilities

MetaDataUtil::updatepublic staticWC 10.8.0

Normalize and process meta data entries from a REST API request.

Skips entries without a key, applies defaults for missing 'value' and 'id' fields, then calls update_meta_data on the given WC_Data object for each valid entry.

Method of the class: MetaDataUtil{}

No Hooks.

Returns

null. Nothing (null).

Usage

$result = MetaDataUtil::update( $meta_data, $target, $default_id ): void;
$meta_data(mixed) (required)
Raw meta data from the request (non-array values are ignored).
$target(WC_Data) (required)
A WC_Data object to call update_meta_data on.
$default_id(mixed)
Default value for 'id' when not provided (default '').
Default: ''

Changelog

Since 10.8.0 Introduced.

MetaDataUtil::update() code WC 10.9.1

public static function update( $meta_data, WC_Data $target, $default_id = '' ): void {
	if ( ! is_array( $meta_data ) ) {
		return;
	}

	foreach ( self::normalize( $meta_data, $default_id ) as $meta ) {
		$target->update_meta_data( $meta['key'], $meta['value'], $meta['id'] );
	}
}