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

WC_REST_Orders_V2_Controller::get_order_item_data() protected WC 1.0

Expands an order item to get its data.

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

Хуков нет.

Возвращает

Массив.

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

// protected - в коде основоного (родительского) или дочернего класса
$result = $this->get_order_item_data( $item );
$item(WC_Order_item) (обязательный)
Order item data.

Код WC_REST_Orders_V2_Controller::get_order_item_data() WC 4.7.0

<?php
protected function get_order_item_data( $item ) {
	$data           = $item->get_data();
	$format_decimal = array( 'subtotal', 'subtotal_tax', 'total', 'total_tax', 'tax_total', 'shipping_tax_total' );

	// Format decimal values.
	foreach ( $format_decimal as $key ) {
		if ( isset( $data[ $key ] ) ) {
			$data[ $key ] = wc_format_decimal( $data[ $key ], $this->request['dp'] );
		}
	}

	// Add SKU and PRICE to products.
	if ( is_callable( array( $item, 'get_product' ) ) ) {
		$data['sku']   = $item->get_product() ? $item->get_product()->get_sku() : null;
		$data['price'] = $item->get_quantity() ? $item->get_total() / $item->get_quantity() : 0;
	}

	// Add parent_name if the product is a variation.
	if ( is_callable( array( $item, 'get_product' ) ) ) {
		$product = $item->get_product();

		if ( is_callable( array( $product, 'get_parent_data' ) ) ) {
			$data['parent_name'] = $product->get_title();
		} else {
			$data['parent_name'] = null;
		}
	}

	// Format taxes.
	if ( ! empty( $data['taxes']['total'] ) ) {
		$taxes = array();

		foreach ( $data['taxes']['total'] as $tax_rate_id => $tax ) {
			$taxes[] = array(
				'id'       => $tax_rate_id,
				'total'    => $tax,
				'subtotal' => isset( $data['taxes']['subtotal'][ $tax_rate_id ] ) ? $data['taxes']['subtotal'][ $tax_rate_id ] : '',
			);
		}
		$data['taxes'] = $taxes;
	} elseif ( isset( $data['taxes'] ) ) {
		$data['taxes'] = array();
	}

	// Remove names for coupons, taxes and shipping.
	if ( isset( $data['code'] ) || isset( $data['rate_code'] ) || isset( $data['method_title'] ) ) {
		unset( $data['name'] );
	}

	// Remove props we don't want to expose.
	unset( $data['order_id'] );
	unset( $data['type'] );

	// Expand meta_data to include user-friendly values.
	$formatted_meta_data = $item->get_formatted_meta_data( null, true );
	$data['meta_data'] = array_map(
		array( $this, 'merge_meta_item_with_formatted_meta_display_attributes' ),
		$data['meta_data'],
		array_fill( 0, count( $data['meta_data'] ), $formatted_meta_data )
	);

	return $data;
}