Woocommerce dünyaca ünlü ve sayısız web sitesinde kullanılan bir e-ticaret alt yapısı olmasına rağmen; gönderim yöntemleriyle ilgili bir küçük açık – gariplik (adına ne derseniz) var ki bir müşterimizde başımıza gelince fark ettik ve nasıl düzeltileceğiyle ilgili bir kod bulduk. Çözümü için functions.php sayfanıza girerek, aşağıdaki kodu eklemeniz yeterli olacaktır.

				
					/**
 * EĞER ÜCRETSİZ GÖNDERİ AKTİF İSE DİĞER GÖNDERİ YÖNTEMLERİNİ GİZLE
 */
function hide_shipping_when_free_is_available( $rates, $package ) {
	$new_rates = array();
	foreach ( $rates as $rate_id => $rate ) {
		// Only modify rates if free_shipping is present.
		if ( 'free_shipping' === $rate->method_id ) {
			$new_rates[ $rate_id ] = $rate;
			break;
		}
	}
	if ( ! empty( $new_rates ) ) {
		//Save local pickup if it's present.
		foreach ( $rates as $rate_id => $rate ) {
			if ('local_pickup' === $rate->method_id ) {
				$new_rates[ $rate_id ] = $rate;
				break;
			}
		}
		return $new_rates;
	}
	return $rates;
}
add_filter( 'woocommerce_package_rates', 'hide_shipping_when_free_is_available', 10, 2 );
				
			

Bu kodu ekleme konusunda desteğe ihtiyacınız olursa, yorumlara yazabilirsiniz.

Leave a Reply

Your email address will not be published. Required fields are marked *