woocommerce_cart_shipping_packages filter-hookWC 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.

Usage

add_filter( 'woocommerce_cart_shipping_packages', 'wp_kama_woocommerce_cart_shipping_packages_filter' );

/**
 * Function for `woocommerce_cart_shipping_packages` filter-hook.
 * 
 * @param  $array 
 *
 * @return 
 */
function wp_kama_woocommerce_cart_shipping_packages_filter( $array ){

	// filter...
	return $array;
}
$array
-

Changelog

Since 1.5.4 Introduced.

Where the hook is called

WC_Cart::get_shipping_packages()
woocommerce_cart_shipping_packages
woocommerce/includes/class-wc-cart.php 1505-1527
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(),
		),
	)
);

Where the hook is used in WooCommerce

Usage not found.