• 20-01-2022, 18:04:35
    #1
    Merhabalar, woocommerce sitemde, kapıda ödemeyi seçince sabit fiyat 20 TL yazan kargo metodunu iptal etmek istiyorum, şehir içi teslim edeceğiz sadece 5 TL olacak mantıken 150 TL toplam olması gerekiyor, sadece burasını yapamadık. Çözümü hakkında ücretli / ücretsiz yardımcı olacak varmıdır?


  • 24-01-2022, 14:43:57
    #2
    Konu aktif, sadece kapıda ödeme bölümünden sabit kargo fiyatının düşmesini istiyorum. Wordpress içerisinde bir ayar yok belki functions.php de bir kod ile yapılabilir, yardımcı olacaklar pm atarsa sevinirim.
  • 25-01-2022, 13:40:24
    #4
    hocam girdim ama olmadı 20 tl koyuyor
  • 26-01-2022, 19:58:59
    #5
    gues adlı üyeden alıntı: mesajı görüntüle
    hocam girdim ama olmadı 20 tl koyuyor
    hocam çok yanlış anlamışım ben, pardon.
    Şimdi aşağıdaki kodları şu şartlarda denedim ve istediğinizi elde ettim. Farklı gönderim yöntemleri kullanıyorsanız belirtmeniz gerekecek:

    Sabit fiyat gönderim yöntemi kullanıyorum: 20 TL
    Müşteri kapıda ödeme seçerse 15 TL indirim yapıyorum.

    add_action( 'woocommerce_cart_calculate_fees', 'kapida_odeme_kargo' );
    function kapida_odeme_kargo ( $cart ) {
        if ( is_admin() && ! defined( 'DOING_AJAX' ) )
            return;
    
        $chosen_payment_id = WC()->session->get('chosen_payment_method');
    
        if ( empty( $chosen_payment_id ) )
            return;
    
        $subtotal = $cart->subtotal;
    
        $odeme_yontemileri = array(
            'cod' => -15, // sabit fiyat kargo ücretinden 15TL düştük
        );
    
    
        foreach ( $odeme_yontemileri as $payment_id => $fee_cost ) {
            if ( $chosen_payment_id === $payment_id ) {
                $cart->add_fee( __('Kapıda Ödeme İndirimi', 'woocommerce'), $fee_cost, true );
            }
        }
    }
    
    // ödeme yöntemi değiştiğinde fiyatı değiştirmek için js
    add_action( 'woocommerce_checkout_init', 'payment_methods_refresh_checkout' );
    function payment_methods_refresh_checkout() {
        wc_enqueue_js( "jQuery( function($){
            $('form.checkout').on('change', 'input[name=payment_method]', function(){
                $(document.body).trigger('update_checkout');
            });
        });");
    }
  • 26-01-2022, 20:47:36
    #6
    top yekün mücadele olayı vardı ya. topyekün zam furyası başladı artık
  • 27-01-2022, 16:53:51
    #7
    d3nnis adlı üyeden alıntı: mesajı görüntüle
    hocam çok yanlış anlamışım ben, pardon.
    Şimdi aşağıdaki kodları şu şartlarda denedim ve istediğinizi elde ettim. Farklı gönderim yöntemleri kullanıyorsanız belirtmeniz gerekecek:

    Sabit fiyat gönderim yöntemi kullanıyorum: 20 TL
    Müşteri kapıda ödeme seçerse 15 TL indirim yapıyorum.

    add_action( 'woocommerce_cart_calculate_fees', 'kapida_odeme_kargo' );
    function kapida_odeme_kargo ( $cart ) {
        if ( is_admin() && ! defined( 'DOING_AJAX' ) )
            return;
    
        $chosen_payment_id = WC()->session->get('chosen_payment_method');
    
        if ( empty( $chosen_payment_id ) )
            return;
    
        $subtotal = $cart->subtotal;
    
        $odeme_yontemileri = array(
            'cod' => -15, // sabit fiyat kargo ücretinden 15TL düştük
        );
    
    
        foreach ( $odeme_yontemileri as $payment_id => $fee_cost ) {
            if ( $chosen_payment_id === $payment_id ) {
                $cart->add_fee( __('Kapıda Ödeme İndirimi', 'woocommerce'), $fee_cost, true );
            }
        }
    }
    
    // ödeme yöntemi değiştiğinde fiyatı değiştirmek için js
    add_action( 'woocommerce_checkout_init', 'payment_methods_refresh_checkout' );
    function payment_methods_refresh_checkout() {
        wc_enqueue_js( "jQuery( function($){
            $('form.checkout').on('change', 'input[name=payment_method]', function(){
                $(document.body).trigger('update_checkout');
            });
        });");
    }
    hocam teşekkür ederim bunu girince 250 tl üstü kargo ücretsiz bende ordada düşüyor ürün fiyatından 20 tl düşmüş oluyor.

    https://prnt.sc/26k6c2l

    burada ürün fiyatını alması gerek 20 tl düşmemesi gerekiyor, ücretsiz kargoda yani 250 tl üstünde bu kodun çalışmaması gerekiyor o zaman olmuş olacak sanırım 250 tl üstünde kargo ve kapıda ödeme ücretsiz sadece ürün fiyatını alıyor bu kadar.
  • 30-01-2022, 16:28:34
    #8
    konu güncel
  • 31-01-2022, 21:35:17
    #9
    gues adlı üyeden alıntı: mesajı görüntüle
    hocam teşekkür ederim bunu girince 250 tl üstü kargo ücretsiz bende ordada düşüyor ürün fiyatından 20 tl düşmüş oluyor.

    https://prnt.sc/26k6c2l

    burada ürün fiyatını alması gerek 20 tl düşmemesi gerekiyor, ücretsiz kargoda yani 250 tl üstünde bu kodun çalışmaması gerekiyor o zaman olmuş olacak sanırım 250 tl üstünde kargo ve kapıda ödeme ücretsiz sadece ürün fiyatını alıyor bu kadar.
    hocam tekrar selamlar, geç gördüm kusura bakmayın.
    eğer 250 TL üstü kargo ücretsiz seçeneğiniz var ise çözümünüz ilk attığım inkte.
    yeni bir gönderim türü ekleyin ve panelden kapıda ödeme seçeneği ile o gönderim yöntemini ilişkilendirin.

    ardından o linkteki kodlarda şu kısımı düzenleyin:

    ## ------ Your Settings (below) ------ ##
    $your_payment_id = 'cod'; // burası aynen kalsın
    $your_shipping_method = 'BURAYI_DUZENLEYIN'; // eklediğinizi gönderim yöntemi
    $fee_amount = -15; // 15 TL indirim yaptırdık yine


    Hali hazırda kullandığınız gönderim/ödeme yöntemlerine tam hakim olamadığımızdan her adımda bir durum ortaya çıkması çok normal. Gönderim/ödeme yöntem planlarınızı tam olarak belirledikten sonra baştan halletmek bu durumda çok daha kolay olabilirdi.