Automattic\WooCommerce\Admin\Features\Fulfillments
OrderFulfillmentsRestController::apply_request_meta_data
Apply request-supplied meta data to a fulfillment, routing _date_fulfilled through Fulfillment::set_date_fulfilled() so the UTC normalization contract is preserved regardless of input path.
Method of the class: OrderFulfillmentsRestController{}
No Hooks.
Returns
Array
Usage
// private - for code of main (parent) class only $result = $this->apply_request_meta_data( $meta_data, $fulfillment ): array;
- $meta_data(mixed) (required)
- Raw meta data from the request (non-array values are ignored).
- $fulfillment(Fulfillment) (required)
- Target fulfillment.
Changelog
| Since 10.8.0 | Introduced. |
OrderFulfillmentsRestController::apply_request_meta_data() OrderFulfillmentsRestController::apply request meta data code WC 10.9.4
private function apply_request_meta_data( $meta_data, Fulfillment $fulfillment ): array {
if ( ! is_array( $meta_data ) ) {
return array();
}
$normalized = MetaDataUtil::normalize( $meta_data, 0 );
foreach ( $normalized as $meta ) {
if ( '_date_fulfilled' === $meta['key'] && is_string( $meta['value'] ) ) {
$fulfillment->set_date_fulfilled( $meta['value'] );
continue;
}
$fulfillment->update_meta_data( $meta['key'], $meta['value'], $meta['id'] );
}
return array_column( $normalized, 'key' );
}