Automattic\WooCommerce\Internal\DataStores\Orders

LegacyDataHandler::order_meta_to_array()privateWC 1.0

Returns all metadata in an order object as an array.

Метод класса: LegacyDataHandler{}

Хуков нет.

Возвращает

Массив. Array of metadata grouped by meta key.

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

// private - только в коде основоного (родительского) класса
$result = $this->order_meta_to_array( $order ): array;
$order(\WC_Order) (обязательный)
Order instance.

Код LegacyDataHandler::order_meta_to_array() WC 9.7.1

private function order_meta_to_array( \WC_Order &$order ): array {
	$result = array();

	foreach ( ArrayUtil::select( $order->get_meta_data(), 'get_data', ArrayUtil::SELECT_BY_OBJECT_METHOD ) as &$meta ) {
		if ( array_key_exists( $meta['key'], $result ) ) {
			$result[ $meta['key'] ]   = array( $result[ $meta['key'] ] );
			$result[ $meta['key'] ][] = $meta['value'];
		} else {
			$result[ $meta['key'] ] = $meta['value'];
		}
	}

	return $result;
}