• Halo developer,
    Saya sedang mengusahakan snippet code untuk meng-custom pengaturan free shipping website saya. Jadi harapannya saya bisa memberi maksimal gratis ongkir sampai Rp 20.000 saja, sehingga jika pembeli yg ongkirnya >Rp 20.000 tidak akan ditanggung semua biaya ongkirnya.

    Misal, ongkir pembeli mencapai Rp 22.000, maka pembeli harus membayar sisanya yaitu Rp 2.000.

    Saya sudah mencoba beberapa code yg dibuat di topik-topik terdahulu, tapi tidak ada yg bekerja. Berikut kode yang terakhir kali saya coba:

    function woocommerce_shipping_method_add_rate_args_woongkir( $rate ) {
    	$min = 20000;
    
    	if ( isset( $rate['id'] ) && strpos( $rate['id'], 'wooongkir:' ) && $rate['cost'] > $min ) {
    		$rate['cost'] = ($rate['cost'] - $min );
    	}
    	else if ( isset( $rate['id'] ) && strpos( $rate['id'], 'wooongkir:' ) && $rate['cost'] <= $min ) {
    		$rate['cost'] = ($rate['cost'] * 0);
    	}
    	return $rate;
    }
    
    add_filter( 'woocommerce_shipping_method_add_rate_args',  'woocommerce_shipping_method_add_rate_args_woongkir' );

    atau ada kaitannya dengan pengaktifan fitur free shipping di bagian ‘Setting > Shipping’ Woocommerce?

    Terima kasih banyak.

Viewing 2 replies - 1 through 2 (of 2 total)
  • Plugin Author Sofyan Sitorus

    (@sofyansitorus)

    Halo,

    Spertinya conditonal check strpos( $rate['id'], 'wooongkir:' ) akan tidak sesuai yang diharapakan. Mungkin perlu di modifikasi sebagai berikut:

    function woocommerce_shipping_method_add_rate_args_woongkir( $rate ) {
    	$min = 20000;
    
    	if ( isset( $rate['id'] ) && false !== strpos( $rate['id'], 'wooongkir:' ) && $rate['cost'] > $min ) {
    		$rate['cost'] = ($rate['cost'] - $min );
    	}
    	else if ( isset( $rate['id'] ) && false !== strpos( $rate['id'], 'wooongkir:' ) && $rate['cost'] <= $min ) {
    		$rate['cost'] = ($rate['cost'] * 0);
    	}
    	return $rate;
    }
    
    add_filter( 'woocommerce_shipping_method_add_rate_args',  'woocommerce_shipping_method_add_rate_args_woongkir' );
    Thread Starter verafp

    (@verafp)

    Halo Kak Sofyan,
    Terima kasih untuk balasannya. Saya sudah cantumkan code yang direkomendasikan ke bagian snippets, maupun functions.php melalui FTP Client, tetapi keduanya masih tidak berhasil.

    Apakah mungkin ada kaitannya dengan tema yang saya gunakan?
    Karena ketika saya test misal mengirimkan ke wilayah Papua Barat, yang kisaran ongkos kirimnya di harga Rp 250.000, saat ini free shippingnya akan langsung terpotong seluruhnya, bukannya mengurangi dari $min = 20000.

    Terima kasih banyak.

Viewing 2 replies - 1 through 2 (of 2 total)
  • The topic ‘Peraturan Free Shipping’ is closed to new replies.