Wordpress kategorisinde sizlere bu tarz birçok bilgilendirme ve işinize yarayacak maddeler paylaşmaya devam edeceğim. Aşağıda belirttiğim kod ile e-ticaret sitenizde ilk alışverişi gerçekleştiren müşterilerinize özel % olarak indirim belirleyebilirsiniz. Aşağıda verdiğim örnekte %10 indirim kullandım.
İndirim oranını değiştirmek için kodda yer alan // Kullanıcının ilk siparişi olup olmadığını kontrol et 'nın altında 0.10 kısımını kendi indirim oranınıza göre güncelleme yapabilirsiniz.
function apply_discount_for_first_purchase( $cart ) {
if ( is_admin() && ! defined( 'DOING_AJAX' ) ) {
return;
}
$user_id = get_current_user_id();
// Kullanıcının önceden sipariş verip vermediğini kontrol et
$args = array(
'customer_id' => $user_id,
'status' => array( 'wc-completed' ),
);
$orders = wc_get_orders( $args );
// Kullanıcının ilk siparişi olup olmadığını kontrol et
if ( empty( $orders ) ) {
// %10 indirim uygula
$discount = $cart->subtotal * 0.10;
$cart->add_fee( 'İlk Alışveriş İndirimi', -$discount );
}
}
add_action( 'woocommerce_cart_calculate_fees', 'apply_discount_for_first_purchase' );
function custom_apply_discount_message() {
$user_id = get_current_user_id();
// Kullanıcının önceden sipariş verip vermediğini kontrol et
$args = array(
'customer_id' => $user_id,
'status' => array( 'wc-completed' ),
);
$orders = wc_get_orders( $args );
// Kullanıcının ilk siparişi olup olmadığını kontrol et
if ( empty( $orders ) ) {
wc_print_notice( 'İlk alışverişinize özel %10 indirim uygulandı!', 'success' );
}
}
add_action( 'woocommerce_before_cart', 'custom_apply_discount_message' );
add_action( 'woocommerce_before_checkout_form', 'custom_apply_discount_message' );Aşağıdaki kod ise IP adresini sınırlandırarak müşterilerinizin yeni hesap kurup daha fazla indirimden faydalanmalarını engelleyebilirsiniz.function get_user_ip() {
if ( ! empty( $_SERVER['HTTP_CLIENT_IP'] ) ) {
return $_SERVER['HTTP_CLIENT_IP'];
} elseif ( ! empty( $_SERVER['HTTP_X_FORWARDED_FOR'] ) ) {
return $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
return $_SERVER['REMOTE_ADDR'];
}
}
function apply_discount_for_first_purchase( $cart ) {
if ( is_admin() && ! defined( 'DOING_AJAX' ) ) {
return;
}
$user_id = get_current_user_id();
$user_ip = get_user_ip();
// Kullanıcının önceden sipariş verip vermediğini kontrol et
$args = array(
'customer_id' => $user_id,
'status' => array( 'wc-completed' ),
);
$orders = wc_get_orders( $args );
// IP adresinin daha önce indirim alıp almadığını kontrol et
$discounted_ips = get_option( 'discounted_ips', array() );
if ( empty( $orders ) && ! in_array( $user_ip, $discounted_ips ) ) {
// %10 indirim uygula
$discount = $cart->subtotal * 0.10;
$cart->add_fee( 'İlk Alışveriş İndirimi', -$discount );
// IP adresini sakla
$discounted_ips[] = $user_ip;
update_option( 'discounted_ips', $discounted_ips );
}
}
add_action( 'woocommerce_cart_calculate_fees', 'apply_discount_for_first_purchase' );
function custom_apply_discount_message() {
$user_id = get_current_user_id();
$user_ip = get_user_ip();
// Kullanıcının önceden sipariş verip vermediğini kontrol et
$args = array(
'customer_id' => $user_id,
'status' => array( 'wc-completed' ),
);
$orders = wc_get_orders( $args );
// IP adresinin daha önce indirim alıp almadığını kontrol et
$discounted_ips = get_option( 'discounted_ips', array() );
if ( empty( $orders ) && ! in_array( $user_ip, $discounted_ips ) ) {
wc_print_notice( 'İlk alışverişinize özel %10 indirim uygulandı!', 'success' );
}
}
add_action( 'woocommerce_before_cart', 'custom_apply_discount_message' );
add_action( 'woocommerce_before_checkout_form', 'custom_apply_discount_message' );Bu tarz ve benzeri içerikleri paylaşmaya devam edeceğim.Wordpress veya Woocommerce ile ilgili işlerinizi ve danışmak istediklerinizi aşağıdaki WhatsApp numarasından ve Telegram hesabımdan ulaşarak destek alabilirsiniz.
Whatsapp: https://wa.me/905318154620
Telegram: https://t.me/btnaslan