Cum să Adaugi Reduceri Automate pe Cantitate în WooCommerce

YouTube Logo Urmărește canalul nostru de YouTube

Oferirea de reduceri pe cantitate este o strategie excelentă pentru creșterea vânzărilor în WooCommerce. Acest articol îți arată cum să implementezi reduceri automate pentru produsele selectate, astfel încât clienții să beneficieze de prețuri mai bune atunci când cumpără mai multe bucăți.

Ce vom face?

✔️ Afișăm un tabel pe pagina produsului cu reducerile disponibile.

✔️ Aplicăm automat reducerea în coș și la finalizarea comenzii.

✔️ Personalizăm lista produselor care beneficiază de reducere.


1. Afișarea unui Tabel cu Reduceri în Pagina Produsului

Primul pas este să afișăm un tabel în pagina produsului pentru a informa utilizatorii despre reducerile disponibile. Acest cod adaugă un tabel de prețuri dinamice, care se va afișa doar pentru produsele eligibile.


YouTube Logo
Vezi tutorialul pe YouTube

📌 Cod pentru afișarea tabelului:

add_action('woocommerce_before_add_to_cart_form', 'display_bulk_discount_table', 10);
function display_bulk_discount_table() {
    global $product;
    $eligible_products = array(27538); // ID-urile produselor eligibile

    if (in_array($product->get_id(), $eligible_products)) {
        $price = $product->get_price(); // Prețul de bază al produsului

        // Calculăm reducerile
        $price_3_4 = $price - ($price * 0.02); // 2% reducere pentru 3-4 bucăți
        $price_5_plus = $price - ($price * 0.05); // 5% reducere pentru 5+ bucăți

        echo '<div style="margin-bottom: 15px; padding: 10px; border: 1px solid #ddd; border-radius: 5px;">';
        echo '<p style="font-weight: bold; text-align: center; margin-bottom: 8px;">📢 Reduceri în funcție de cantitate</p>';
        echo '<table style="width: 100%; border-collapse: collapse; font-size: 14px;">';
        echo '<tr style="background: #f8f8f8; text-align: center;">';
        echo '<th style="border: 1px solid #ddd; padding: 5px;">Cantitate</th>';
        echo '<th style="border: 1px solid #ddd; padding: 5px;">Preț/Bucată</th>';
        echo '</tr>';
        echo '<tr style="text-align: center;">';
        echo '<td style="border: 1px solid #ddd; padding: 5px;">1-2 buc.</td>';
        echo '<td style="border: 1px solid #ddd; padding: 5px;">' . wc_price($price) . '</td>';
        echo '</tr>';
        echo '<tr style="text-align: center;">';
        echo '<td style="border: 1px solid #ddd; padding: 5px;">3-4 buc.</td>';
        echo '<td style="border: 1px solid #ddd; padding: 5px; color: green; font-weight: bold;">' . wc_price($price_3_4) . '</td>';
        echo '</tr>';
        echo '<tr style="text-align: center;">';
        echo '<td style="border: 1px solid #ddd; padding: 5px;">5+ buc.</td>';
        echo '<td style="border: 1px solid #ddd; padding: 5px; color: green; font-weight: bold;">' . wc_price($price_5_plus) . '</td>';
        echo '</tr>';
        echo '</table>';
        echo '</div>';
    }
}

🔹 Cum funcționează?

✅ Se verifică dacă produsul este în lista celor eligibile.
✅ Se calculează reducerile pentru 3-4 bucăți (2%) și 5+ bucăți (5%).
✅ Se afișează un tabel stilizat cu reducerile disponibile.


2. Aplicarea Reducerii în Coș și la Finalizarea Comenzii

Acum trebuie să ne asigurăm că reducerile sunt aplicate automat în coș și în pagina de checkout.

📌 Cod pentru aplicarea reducerii:

add_action('woocommerce_cart_calculate_fees', 'apply_bulk_discount_in_cart');
function apply_bulk_discount_in_cart($cart) {
    if (is_admin() && !defined('DOING_AJAX')) return;

    $discount = 0;
    $eligible_products = array(27538); // ID-urile produselor eligibile

    foreach ($cart->get_cart() as $cart_item) {
        $product_id = $cart_item['product_id'];
        $qty = $cart_item['quantity'];
        $subtotal = $cart_item['line_total']; // Totalul pentru acel produs

        if (in_array($product_id, $eligible_products)) {
            if ($qty >= 3 && $qty < 5) {
                $reducere = $subtotal * 0.02; // 2% reducere
            } elseif ($qty >= 5) {
                $reducere = $subtotal * 0.05; // 5% reducere
            } else {
                $reducere = 0;
            }

            $discount += $reducere;

            // Debugging: verifică reducerea în log
            error_log("Produs ID: $product_id, Cantitate: $qty, Subtotal: $subtotal, Reducere aplicată: $reducere RON");
        }
    }

    if ($discount > 0) {
        $cart->add_fee('💰 Reducere pentru cantitate', -$discount, true, '');
    }
}

🔹 Cum funcționează?

✔️ Verifică fiecare produs din coș și dacă face parte din produsele eligibile.
✔️ Aplică reducerea de 2% pentru 3-4 bucăți și 5% pentru 5+ bucăți.
✔️ Afișează reducerea direct în coș și în pagina de checkout.


🎯 Concluzie

Prin implementarea acestui cod, clienții vor vedea clar reducerile înainte de a cumpăra și vor primi discount-ul automat în coș. Acest lucru îmbunătățește conversiile și oferă o experiență mai bună utilizatorilor.

💡 Bonus: Poți extinde funcționalitatea pentru a adăuga mai multe nivele de reduceri sau să aplici discount-uri doar pentru utilizatorii autentificați.
📌 Testează acest cod și vezi cum îți crește rata de conversie! 🚀

 

× YouTube Logo

🔔 Abonează-te la canalul nostru!

Primește cele mai noi tutoriale WordPress direct pe YouTube!

×