WooCommerce: come impostare un ordine minimo di acquisto o di prodotti

Come impostare un ordine minimo o un numero minimo di prodotti su WooCommerce

WooCommerce è un plugin estremamente potente e personalizzabile, che permette a tutti di creare un e-commerce con facilità.
Tuttavia, per poter effettuare delle personalizzazioni particolari, non sempre le soluzioni integrate nel plugin bastano. A volte è necessario ricorrere a plugin aggiuntivi, oppure scrivere qualche riga di codice personalizzato per aggiungere una determinata funzione al nostro e-commerce.

Come nel caso in cui volessimo impostare un ordine minimo di acquisto, oppure un numero minimo di prodotti su WooCommerce prima che l’utente possa effettuare l’acquisto.
Si tratta di una personalizzazione molto utile in alcuni casi, ma che WooCommerce “base” non permette.

Con SiteGround puoi avere hosting ottimizzato per WordPress a partire da 3.95€ al mese. Approfitta ora di questa offerta!

Ecco perché, in questo articolo, vedremo sia come scegliere un ordine minimo di acquisto, sia come scegliere un numero minimo di prodotti prima che un utente possa effettuare l’acquisto.

Prima di cominciare

Prima di iniziare a vedere come personalizzare WooCommerce impostando un ordine minimo di acquisto o un ordine minimo di prodotti, vediamo quali sono i requisiti necessari.

Siccome sarà necessario incollare qualche riga di codice PHP, è richiesta l’installazione di un child theme. Se già possiedi un child theme allora è tutto ok, altrimenti puoi dare un’occhiata alla nostra guida su come creare un child theme per WordPress.

In alternativa, se proprio non vuoi usare un child theme per personalizzare il tuo sito WordPress, puoi utilizzare un plugin che ti permetta di inserire codice PHP personalizzato.
In questo caso puoi leggere il nostro articolo su come inserire codice PHP su WordPress.

Ovviamente, sconsigliamo fortemente di inserire codice personalizzato all’interno del tema genitore del tuo sito WordPress altrimenti, al successivo aggiornamento del tema, perderai il codice personalizzato precedentemente inserito.

Come impostare un ordine minimo di acquisto

Il lavoro da fare è molto semplice, sarà sufficiente incollare il seguente codice PHP nel file functions.php (se si sta utilizzando un child theme), oppure creare un nuovo snippet e incollare il seguente codice (se si sta utilizzando il plugin PHP Snippets).

add_action( 'woocommerce_checkout_process', 'wpspecial_imposta_ordine_minimo_importo' );
add_action( 'woocommerce_before_cart' , 'wpspecial_imposta_ordine_minimo_importo' ); 
add_action( 'woocommerce_before_checkout_form', 'wpspecial_imposta_ordine_minimo_importo' );
function wpspecial_imposta_ordine_minimo_importo() {
    // Specifica l'importo minimo per l'acquisto
    $minimo_acquisto = 50;

    if ( WC()->cart->total < $minimo_acquisto ) {

        if( is_cart() ) {

            wc_print_notice( 
                sprintf( 'Devi effettuare un acquisto minimo di %s per completare un ordine, attualmente il tuo ordine è di %s.' , 
                    wc_price( $minimo_acquisto ), 
                    wc_price( WC()->cart->total )
                ), 'error' 
            );

        } else {

            wc_add_notice( 
                sprintf( 'Devi effettuare un acquisto minimo di %s per completare un ordine, attualmente il tuo ordine è di %s.' , 
                    wc_price( $minimo_acquisto ), 
                    wc_price( WC()->cart->total )
                ), 'error' 
            );

        }
    }
}

L’unica variabile su cui dobbiamo agire è $minimo_acquisto, alla quale dovremo inserire l’importo minimo richiesto per poter completare l’ordine.

Ad esempio, se vogliamo che l’ordine minimo debba essere di 50€, allora dovremo impostare 50 (senza inserire la valuta).

In questo modo, se l’utente entrerà nel carrello o andrà a fare il checkout prima che l’importo totale abbia superato 50€, apparirà il seguente messaggio:

Messaggio per ordine minimo di acquisto su WooCommerce
Messaggio per ordine minimo di acquisto su WooCommerce

E non solo, ovviamente l’utente non solo vedrà il messaggio di errore, ma non potrà terminare l’ordine fino a quando non avrà superato il limite minimo di acquisto che abbiamo impostato.

Come impostare un numero minimo di prodotti

A differenza del caso precedente in cui impostavamo un importo minimo di acquisto, in questo caso imposteremo un numero di prodotti minimo per poter effettuare un ordine.

Come abbiamo visto prima, sarà sufficiente incollare il seguente codice PHP nel file functions.php del proprio child theme oppure, se non si sta utilizzando un tema child, creare un nuovo snippet e incollare il seguente codice tramite il plugin PHP Snippets.

add_action( 'woocommerce_checkout_process', 'wpspecial_imposta_ordine_minimo_prodotti' );
add_action( 'woocommerce_before_cart' , 'wpspecial_imposta_ordine_minimo_prodotti' );
add_action( 'woocommerce_before_checkout_form', 'wpspecial_imposta_ordine_minimo_prodotti' );
function wpspecial_imposta_ordine_minimo_prodotti() {
    // Specifica l'ordine minimo dei prodotti da acquistare
    $minimo_prodotti = 5;

    if ( WC()->cart->cart_contents_count < $minimo_prodotti ) {

        if( is_cart() ) {

            wc_print_notice( 
                sprintf( 'Devi acquistare almeno %s prodotti per completare un ordine, attualmente hai %s prodotti nel carrello.' , 
                    $minimo_prodotti, 
                    WC()->cart->cart_contents_count
                ), 'error' 
            );

        } else {

            wc_add_notice( 
                sprintf( 'Devi acquistare almeno %s prodotti per completare un ordine, attualmente hai %s prodotti nel carrello.' , 
                    $minimo_prodotti, 
                    WC()->cart->cart_contents_count
                ), 'error' 
            );

        }
    }
}

Dobbiamo personalizzare la variabile $minimo_prodotti andando ad inserire il numero minimo di prodotti che l’utente deve avere nel carrello per poter procedere all’acquisto.

Ad esempio, se vogliamo che l’utente acquisti almeno 5 prodotti, dobbiamo impostare la variabile a 5.
In caso contrario, apparirà un messaggio di errore di questo tipo:

Messaggio per numero minimo di prodotti su WooCommerce
Messaggio per numero minimo di prodotti su WooCommerce

Il messaggio apparirà nel carrello e nella pagina di checkout se l’utente non avrà almeno 5 prodotti nel carrello.

Conclusioni

In questo articolo abbiamo visto come personalizzare le funzionalità di un sito fatto con WooCommerce andando ad impostare un importo minimo di acquisto, oppure un numero minimo di prodotti prima di poter procedere all’acquisto.

E tu? Conosci altri modi per poter aggiungere queste funzionalità ad un sito WordPress? Magari qualche plugin? Faccelo sapere tramite il modulo dei commenti 😉

Con SiteGround puoi avere hosting ottimizzato per WordPress a partire da 3.95€ al mese. Approfitta ora di questa offerta!

Piaciuto l'articolo? Condividilo sui social!

2 commenti su “WooCommerce: come impostare un ordine minimo di acquisto o di prodotti

  1. Ciao , la tua guida mi è servita molto e devo dire, complimenti! ti chiedo se puoi realizzare una guida per dei prodotti bundles ovvero: se tu compri 4 prodotti la spedizione è gratuita ( quindi spedizione free in base al numero di prodotti) e invece se compri 8 prodotti ogni prodotto costerà N euro in meno e si avrà sempre la spedizione gratuita, grazie attendo tue

Scrivi una risposta

Il tuo indirizzo email non sarà pubblicato.I campi obbligatori sono contrassegnati *