Change Woo-commerce shipping price based on cart product


Put below code in functions.php

function aviweb_flat_rates_cost( $rates, $package ) {

foreach( WC()->cart->get_cart() as $cart_item_key => $values ) {

$_product = $values[‘data’];

if($_product->id == 123){

$rates[‘flat_rate:2’]->cost = 0;

}

}

return $rates;

}
add_filter( ‘woocommerce_package_rates’, ‘aviweb_flat_rates_cost’, 10, 2 );

Advertisement

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s