Ücretsiz Kargo Geçerli İse Diğer Kargo Seçeneklerini Kaldırma

4

E-ticaret sitemizde bazen sipariş miktarına veya adetine göre ücretsiz kargo seçenekleri tanımlıyoruz.Ücretsiz kargo seçeneğini tanımlamış olmamıza ve sipariş bizim ücretsiz kargo koşullarımızı karşılıyor olmasına rağmen diğer kargo seçenekleri de ödeme veya sepet sayfasında görünüyor olmaktadır.Aşağıda paylaşmış olduğum kodu kullanarak eğer sipariş sizin ücretsiz kargo koşullarınızı karşılıyorsa diğer kargo seçeneklerini gizleyebilirsiniz.

Bu işlemi yapmak için aşağıda paylaşmış olduğum kodu functions.php dosyanıza ekleyin kod otomatikm olarak çalışacaktır ve artık ücretsiz kargo seçeneği aktif ise diğer kargo seçenekleri gizlenecektir.

 


/**
 * 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;
}
4 Yorumlar
  1. İdris KARAKAYA diyor

    Hocam kolay kolay her sitedeki her içeriğe yorum yazmam (hak eden, hakkını veren kişiler hariç ), emeğinize sağlık başarılı bir blog, teşekkür ederim paylaşımlarınız çok faydalı

    1. Seyda AŞAN diyor

      Yorumunuz için teşekkür ederim.Vakit buldukça yazıyorum birşeyler.

  2. Mehmet Emir TURSUN diyor

    Çalışmıyor yardımcı olur musunuz?

    1. Seyda AŞAN diyor

      Çalışıyor kod test edildi.

Cevap bırakın

E-posta hesabınız yayımlanmayacak.

İnternet sitemizden en verimli şekilde faydalanabilmeniz ve kullanıcı deneyiminizi geliştirebilmek için Cookie kullanıyoruz. Cookie kullanılmasını tercih etmezseniz tarayıcınızın ayarlarından Cookieleri silebilir ya da engelleyebilirsiniz. Kabul Ediyorum Devamını oku

Gizlilik ve Çerez Politikası