Woocommerce in različni načini plačila dostave
9 naročnikov
9 naročnikov
Pozdravljeni!
Prvič se ubadam z Woocommercom na WP-ju. Vse sem uspel uspešno nastaviti le pri načinu plačila dostave me ene zadeve "hecajo" in ne vem kako to urediti, tako da prosim za pomoč.
Uspel sem nastaviti, da je avtomatsko brezplačna dostava, ko je naročilo nad 50 €, imam pa problem pri obračunu različnih stroškov pošiljanja. V sekciji Dostava / Fiksna stopnja /cena sem nastavil tole med dodatne stopnje:
Plačilo po predračunu |1.50 €|class
Plačilo po povzetju |3.00 € |class
In tole prav lepo deluje. Pojavi pa se problem, da se pri plačilu, ko imam nastavljeno na Spletno bančništvo in pa Plačilo ob povzetju, le-ti dve zadevi pojavita na koncu v košarici, ko je zadnja stopnja ZAKLJUČI NAKUP.
Namreč, če pri DOSTAVA nastavim Plačilo po predračunu, se vseeno pri PLAČILO pojavita obe zadevi Spletno bančništo in pa Plačilo ob povzetju in tako pride do situacije, da je DOSTAVA nastavljena na Plačilo po povzetju, PLAČILO pa na Neposredna bančna transakcija in obratno.
Kako nastaviti, da se bo tole izključevalo - torej če izberem pri DOSTAVA Plačilo po povzetju, da se tudi pri PLAČILO avtomatsko izbere možnost Plačilo ob povzetju in obratno, ko izberem DOSTAVA Plačilo po predračunu, da se izbere PLAČILO Neposredna bančna transakcija.
Znesek v košarici je vedno pravilen glede na izbiro dostave. Hvala.
LP
12 odgovorov
Je kdo tole rešil? Jaz sem vse plugine pregledal in čistno nič našel. Obrnu sem celoten google na ključno besedo ˝shipping depends on delivery˝ pa brez uspeha.
Pozdrav vsem skupaj, malce sem si danes vzel časa in uspel spackati nekaj skupaj (thank you Google :) )
@Hiperborejec - v tvojem primeru je koda sledeča, ostali popravite vrednosti po vaših željah (dodaj funkcijo v functions.php datoteki):
/**
* Function for woocommerce - custom hide options...
*/
function payment_gateway_disable_country($available_gateways) {
global $woocommerce;
$packages = $woocommerce->shipping->get_packages();
foreach ( $packages as $i => $package ) {
$chosen_method = isset( $woocommerce->session->chosen_shipping_methods[ $i ] ) ?
$woocommerce->session->chosen_shipping_methods[ $i ] : '';
if ('flat_rate:placilo-po-predracunu' == $chosen_method) {
unset($available_gateways['cod']);
break;
}
if ('flat_rate:placilo-po-povzetju' == $chosen_method) {
unset($available_gateways['bacs']);
break;
}
}
return $available_gateways;
}
add_filter(
'woocommerce_available_payment_gateways',
'payment_gateway_disable_country'
);
meni deluje, tako da bi moralo tudi ostalim :)))
Zdravo!
Jaz imam pa težavo, ker ne znam nastaviti, avtomatsko brezplačno dostavo, če je vrednost nad določenim zneskom, tako kot je to rešil Hiperborejec.
Mogoče kakšen nasvet?