Saturday 8 October 2016

How to hide other Shipping methods When free Shipping is available in WooCommerce, WordPress?


Some times there are many methods use for diffident need & conditions in WooCommerce. In it one comman condition is like "Hide other Shipping methods When free Shipping is available". Below is given solution of this condition.

First create Free Shipping method with condition.Then,

Add following code in functions.php file


Snippets for WooCommerce 2.5
<?php
/**
 * woocommerce_package_rates is a 2.1+ hook
 */
add_filter( 'woocommerce_package_rates', 'hide_shipping_when_free_is_available', 10, 2 );

/**
 * Hide shipping rates when free shipping is available
 *
 * @param array $rates Array of rates found for the package
 * @param array $package The package array/object being shipped
 * @return array of modified rates
 */
function hide_shipping_when_free_is_available( $rates, $package ) {
 
  // Only modify rates if free_shipping is present
  if ( isset( $rates['free_shipping'] ) ) {
 
  // To unset a single rate/method, do the following. This example unsets flat_rate shipping
  unset( $rates['flat_rate'] );
 
  // To unset all methods except for free_shipping, do the following
  $free_shipping          = $rates['free_shipping'];
  $rates                  = array();
  $rates['free_shipping'] = $free_shipping;
}

return $rates;
}
?>



Snippets for WooCommerce Version 2.6+
<?php
/**
 * Hide shipping rates when free shipping is available.
 * Updated to support WooCommerce 2.6 Shipping Zones.
 *
 * @param array $rates Array of rates found for the package.
 * @return array
 */
function my_hide_shipping_when_free_is_available( $rates ) {
$free = array();
foreach ( $rates as $rate_id => $rate ) {
if ( 'free_shipping' === $rate->method_id ) {
$free[ $rate_id ] = $rate;
break;
}
}
return ! empty( $free ) ? $free : $rates;
}
add_filter( 'woocommerce_package_rates', 'my_hide_shipping_when_free_is_available', 100 );
?>





For more Interesting, Useful Article & codes visit IT New Code.


Ankit Shah PHP Expert

IT New Code suggest a solution for your problem related to coding, Specially .PHP, Wordpress, WooCommerce, Magento, HTML and CSS. Visit Our website for Information.

0 comments:

Post a Comment

 

Copyright @ 2016 IT New Code | Developing Code | Designing Code.

Designed by: Ankit Shah