Come applicare automaticamente un coupon in base al ruolo utente su WooCommerce

Come applicare automaticamente un coupon in base al ruolo utente su WooCommerce

Supponiamo di voler applicare automaticamente un coupon chiamato per esempio “scontopromo” agli utenti che hanno un ruolo specifico che noi chiamiamo “collaboratori”.

Stiamo considerando che esista e sia valido un coupon con quel nome e che all’interno del nostro sito sia già presente il ruolo personalizzato (puoi usare plugin come User Role Editor per creare e gestire ruoli personalizzati facilmente).

Per ottenere questo risultato, è sufficiente aggiungere questo codice al file functions.php del nostro tema child.
Puoi personalizzare questo codice inserendo il nome del coupon corretto e il nome del ruolo personalizzato che hai già creato sul tuo sito.

add_action('woocommerce_before_cart', 'applica_coupon_automatico_per_ruolo');
function applica_coupon_automatico_per_ruolo() {
    
    if (is_admin() && !defined('DOING_AJAX')) return;

    // Nome del coupon
    $coupon_code = 'scontopromo';

    // Ruolo per cui applicare il coupon
    $ruolo_target = 'collaboratori';

    // Ottieni l'utente corrente
    if (is_user_logged_in()) {
        $user = wp_get_current_user();

        // Verifica se ha il ruolo specificato
        if (in_array($ruolo_target, $user->roles)) {
            // Ottieni il carrello
            $carrello = WC()->cart;

            // Applica il coupon se non è già applicato
            if (!$carrello->has_discount($coupon_code)) {
                $carrello->apply_coupon($coupon_code);
            }
        }
    }
}

Buon lavoro!

Hai bisogno di personalizzazioni su WooCommerce?

Lascia un commento

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

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.

Torna in alto