WooCommerce: come creare uno sconto automatico sul carrello

Come si dice “il bisogno aguzza l’ingegno” e visto che per un nostro cliente ci serviva questa funzionalità, mettiamo a disposizione di tutti questo hook per WooCommerce.

Per ottenere questo risultato non è necessario l’utilizzo di alcun plugin, è sufficiente seguire questa procedura

  • creare un codice sconto (coupon) nelle impostazioni di WooCommerce > Codici promozionali;
  • prelevare il codice (copiare il titolo)
  • scegliere il tipo di sconto sul carrello (percentuale);
  • impostare il valore dello sconto
  • impostare il valore minimo per cui venga applicato
  • salvare il coupon

Tuttavia questa procedura implica che il cliente deve INSERIRE il codice del coupon MANUALMENTE e può succedere che qualcuno non capisca questa azione.

Per applicare il coupon in modo automatico possiamo inserire questo codice nel file functions.php del nostro tema

add_action( 'woocommerce_before_cart', 'apply_matched_coupons' );
function apply_matched_coupons() {
global $woocommerce;
$coupon_code = '10percento'; // titolo del coupon
if ( $woocommerce->cart->has_discount( $coupon_code ) ) return;
if ( $woocommerce->cart->cart_contents_total >= 500 ) { // valore minimo del carrello
$woocommerce->cart->add_discount( $coupon_code );
$woocommerce->show_messages();
}
}

Potete vedere come funziona su www.illillo.it

5 replies
  1. Federico
    Federico says:

    Ciao,

    molto interessante, vorrei però chiedere una cosa, è possibile assegnare un codice a un utente che si registra ma con durata di un mese? Es. l’utente si iscrive il 10/04/2016 e ha tempo fino al 10/05/2016 per utilizzare il suo coupon.

    Grazie mille per la risposta.

    Federico

    Reply
  2. Roberto
    Roberto says:

    Ciao, ho provato il tuo codice e funziona alla perfezione ma mi è sorto un dubbio: c’è un modo di escludere una o più categorie da questo tipo di coupon automatico? Mi spiego meglio: nel mio e-commerce ho già dei prodotti in offerta e vorrei quindi che a questi non sia applicato lo sconto automatico nel carrello. Se imposto il tutto usando il tuo codice ed escludo la categoria che mi interessa dalle impostazioni del coupon, se inserisco un prodotto già in offerta nel carrello mi appare il messaggio “Il coupon non può essere applicato per questa categoria ed è stato eliminato” ma non mi fa andare avanti con l’acquisto non visualizzando, di fatto, i prodotti nel carrello… Come posso fare?

    Reply
  3. francesca
    francesca says:

    Ciao, se invece io dovessi inserire lo sconto automatico nel carrello valido solo se l’utente acquista prodotti di una specifica categoria? e se l’utente inserisce un codice coupon, come posso impostare che lo sconto automatico non sia valido?

    Reply

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published. Required fields are marked *