WordPress at Your Fingertips
function is not described

WC_Cart::get_shipping_packages() public WC 1.5.4

Get packages to calculate shipping for.

This lets us calculate costs for carts that are shipped to multiple locations.

Shipping methods are responsible for looping through these packages.

By default we pass the cart itself as a package - plugins can change this. through the filter and break it up.

{} It's a method of the class: WC_Cart{}

Hooks from the method
Return

Array. of cart items

Usage

$WC_Cart = new WC_Cart();
$WC_Cart->get_shipping_packages();

Changelog

Since 1.5.4 Introduced.

Code of WC_Cart::get_shipping_packages() WC 5.6.0

public function get_shipping_packages() {
	return apply_filters(
		'woocommerce_cart_shipping_packages',
		array(
			array(
				'contents'        => $this->get_items_needing_shipping(),
				'contents_cost'   => array_sum( wp_list_pluck( $this->get_items_needing_shipping(), 'line_total' ) ),
				'applied_coupons' => $this->get_applied_coupons(),
				'user'            => array(
					'ID' => get_current_user_id(),
				),
				'destination'     => array(
					'country'   => $this->get_customer()->get_shipping_country(),
					'state'     => $this->get_customer()->get_shipping_state(),
					'postcode'  => $this->get_customer()->get_shipping_postcode(),
					'city'      => $this->get_customer()->get_shipping_city(),
					'address'   => $this->get_customer()->get_shipping_address(),
					'address_1' => $this->get_customer()->get_shipping_address(), // Provide both address and address_1 for backwards compatibility.
					'address_2' => $this->get_customer()->get_shipping_address_2(),
				),
				'cart_subtotal'   => $this->get_displayed_subtotal(),
			),
		)
	);
}