Woocommerce Kategoriye Özel Minumum Sipariş Tutarı

0

WordPress e-ticaret siteleri için hizmet verirken birbirinden değişik özel talepler ile karşı karşıya kalıyıorum.Bu gün yine bir değişik bir güzel talep sonucu sizler ile birlikteyim.Bir müşterim benden bazı ürün kategorileri için minumum sipariş tutarı belirtmeyi istedi.Eğer müşteri kendisinin belirlemiş olduğu kategoriden sipariş verecekse minumum tutar kadar sipariş vermesi gerekli.

WordPress Woocommerce ile bu mümkün kategoriye özel sipariş tutarı belirlemek ve bu kategoriye özel sipariş tutarını sipariş desteklemiyorsa ödeme sayfasına gitmez ve müşteriye bir uyarı verir.Eklenti kullanımından her zaman olduğu gibi kaçan ben bu sorunu bu talebi yine bir kaç satır kod aracılığı ile çözmüş bulnuyorum.

Eğer sizde WordPress Woocommerce ile e-ticaret sitesi çalıştırıyorsanız ve istediğiniz ürün kategorilerine minumum sipariş tutarı tanımlamak istemiyorsanız aşağıya bırakmış olduğum kodu kullanabilirsiniz.Kodun kullanımı her zaman ki gibi çok basit.Tema dosyalarınız içerisinde functions.php dosyasına ekleyin.Minumum sipariş tutarını değiştirin ve kategori ID’nizi yazın.

Uyarıları kendinize göre düzenleyebilirsiniz.Eğer kodun kullanımında sorun yaşarsanız ulaşabilir veya yaşadığınız sorunları yorum kısmından belirtebilirsiniz.

 


add_action( 'woocommerce_check_cart_items', 'spyr_set_min_total' );

function spyr_set_min_total() {

// Sepet sayfasında mevzuyu başlat.

if( is_cart() || is_checkout() ) {

global $woocommerce, $product;

$i=0;

//tüm ürünleri kontrol et

foreach ( $woocommerce->cart->cart_contents as $product ) :

// Minumum tutar

$minimum_cart_total = 50;

// benim yerime topla

//nakliye ücretini dahil etme

$total = WC()->cart->subtotal;

//Özel kategoriden herhangi bir ürün olup olmadığını kontrol et

if ( has_term( '239', 'product_cat', $product['product_id'] ) ) :

//varsa ürünün fiyatını al

$regular_price = get_post_meta($product['product_id'], '_regular_price', true); //change to _sale_price if it is in sale

//echo $regular_price."<br>";

$total = $regular_price * $product['quantity'];

//echo $total."<br>";

$subtotal_cat += $total; //get total of

//echo $subtotal_cat;

//$category_price += ( $product['line_subtotal'] + $product['line_subtotal_tax'] );

endif;

endforeach;

foreach ( $woocommerce->cart->cart_contents as $product ) :

if ( has_term( '239', 'product_cat', $product['product_id'] ) ) :

// Değerleri karşılaştırın ve hata eklemelisin

// herşeye uyarı gösterme 50 TL'nin altındaysa göster

// mesaj göster

if( $subtotal_cat <= $minimum_cart_total ) {

// Display our error message

wc_add_notice( sprintf( '<strong>Minumum sipariş tutraı %s %s olmalıdır.</strong>'

.'<br />Sizin sipariş toplamınız: %s %s.',

$minimum_cart_total,

get_option( 'woocommerce_currency'),

$total,

get_option( 'woocommerce_currency') ),

'error' );

}

endif;

endforeach;

}

}

&nbsp;

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ı