WC_Order_Item_Shipping::set_taxes()publicWC 1.0

Set taxes.

This is an array of tax ID keys with total amount values.

Method of the class: WC_Order_Item_Shipping{}

No Hooks.

Return

null. Nothing (null).

Usage

$WC_Order_Item_Shipping = new WC_Order_Item_Shipping();
$WC_Order_Item_Shipping->set_taxes( $raw_tax_data );
$raw_tax_data(array) (required)
Value to set.

WC_Order_Item_Shipping::set_taxes() code WC 9.4.2

public function set_taxes( $raw_tax_data ) {
	$raw_tax_data = maybe_unserialize( $raw_tax_data );
	$tax_data     = array(
		'total' => array(),
	);
	if ( isset( $raw_tax_data['total'] ) ) {
		$tax_data['total'] = array_map( 'wc_format_decimal', $raw_tax_data['total'] );
	} elseif ( ! empty( $raw_tax_data ) && is_array( $raw_tax_data ) ) {
		// Older versions just used an array.
		$tax_data['total'] = array_map( 'wc_format_decimal', $raw_tax_data );
	}
	$this->set_prop( 'taxes', $tax_data );

	if ( 'yes' === get_option( 'woocommerce_tax_round_at_subtotal' ) ) {
		$this->set_total_tax( NumberUtil::array_sum( $tax_data['total'] ) );
	} else {
		$this->set_total_tax( NumberUtil::array_sum( array_map( 'wc_round_tax_total', $tax_data['total'] ) ) );
	}
}