Stworzyłem mechanizm, który wdraża automatyczny kod rabatowy na platformie e-commerce, z myślą o maksymalizacji wartości dla moich klientów oraz optymalizacji procesu sprzedażowego na mojej stronie. Ten kod jest kluczem do zautomatyzowanego systemu rabatowego, który dynamicznie dostosowuje wysokość zniżki w zależności od liczby produktów dodanych do koszyka przez klienta.
Funkcja, którą zaprojektowałem, działa w prosty, ale niezwykle efektywny sposób. Gdy klient dodaje do koszyka dwa produkty, automatycznie aktywowany jest rabat w wysokości 30%. Sytuacja staje się jeszcze bardziej korzystna, gdy w koszyku znajdzie się trzy lub więcej produktów – wtedy rabat wzrasta do 50%. Ten mechanizm ten jest zaprojektowany tak, aby zachęcać klientów do zwiększania swoich zakupów, oferując im coraz atrakcyjniejsze zniżki.
Dla klienta oznacza to bezpośrednią korzyść finansową i dodatkową motywację do dokonania większych zakupów. Z mojej perspektywy, jako właściciela strony, automatyczny kod rabatowy zwiększa średnią wartość koszyka i poprawia wskaźniki sprzedaży. Ponadto, eliminuje potrzebę ręcznego wprowadzania kodów promocyjnych, co jest wygodne zarówno dla mnie, jak i dla moich klientów.
Implementacja tego rozwiązania miała również pozytywny wpływ na lojalność klientów. Dzięki jasno określonym zasadom, klienci dokładnie wiedzą, co muszą zrobić, aby uzyskać określoną zniżkę. To przejrzystość i uczciwość w relacjach z klientem, które budują zaufanie i zachęcają do ponownych zakupów.
Z technicznego punktu widzenia, wprowadzenie automatycznego kodu rabatowego było możliwe dzięki wykorzystaniu hooka 'woocommerce_before_calculate_totals’. Pozwoliło to na dynamiczne przeliczanie cen produktów w koszyku przed ich finalizacją. Użyłem również funkcji 'wc_add_notice’ do informowania klientów o aktywowanej zniżce, co dodatkowo podnosi ich doświadczenie zakupowe.
Podsumowując, wdrożenie automatycznego kodu rabatowego na mojej stronie to krok naprzód w oferowaniu wartości dodanej dla moich klientów oraz w efektywności zarządzania sprzedażą. Daje to wyraźne korzyści zarówno dla użytkowników, jak i dla mnie, ułatwiając proces zakupowy i czyniąc go bardziej atrakcyjnym.
function apply_discount_on_all_products_with_message( $cart ) { if ( is_admin() && ! defined( 'DOING_AJAX' ) ) { return; } $cart_item_count = count( $cart->get_cart() ); $discount_percentage = 0; // Ustalanie procentu rabatu na podstawie liczby produktów w koszyku if ( $cart_item_count == 2 ) { $discount_percentage = 30; $message = "PuraLove -30% rabatu!"; } elseif ( $cart_item_count >= 3 ) { $discount_percentage = 50; $message = "PuraLove -50% rabatu!"; } // Aplikowanie rabatu na wszystkie produkty w koszyku i wyświetlanie komunikatu if ( $discount_percentage > 0 ) { foreach ( $cart->get_cart() as $cart_item_key => $cart_item ) { $cart_item['data']->set_price( $cart_item['data']->get_price() * ( 1 - $discount_percentage / 100 ) ); } wc_add_notice( $message, 'notice' ); } } add_action( 'woocommerce_before_calculate_totals', 'apply_discount_on_all_products_with_message', 10 );
Warunek wstępny
if ( is_admin() && ! defined( 'DOING_AJAX' ) ) { return; }
Opis: Ten fragment kodu zapobiega wykonaniu reszty funkcji w kontekście panelu administracyjnego WordPressa lub podczas zapytań AJAX, co jest istotne dla zapewnienia prawidłowego działania sklepu i uniknięcia niepożądanych zmian w panelu administracyjnym.
Obliczanie ilości produktów
count( $cart->get_cart() )
- Opis: Ta instrukcja liczy produkty w koszyku, umożliwiając dalsze decyzje dotyczące stosowanego rabatu w zależności od ich ilości.
Decyzja o wysokości rabatu
if ( $cart_item_count == 2 )
orazelseif ( $cart_item_count >= 3 )
- Opis: Te warunki określają, jak duży rabat należy zastosować – 30% dla dwóch produktów w koszyku lub 50% dla trzech lub więcej produktów.
Aplikacja rabatu na produkty
foreach ( $cart->get_cart() as $cart_item_key => $cart_item )
- Opis: Dzięki tej pętli
foreach
, możliwe jest przejście przez każdy produkt w koszyku i zastosowanie do niego obliczonego rabatu.
Obliczanie i stosowanie ceny po rabacie
$cart_item['data']->set_price( $cart_item['data']->get_price() * ( 1 - $discount_percentage / 100 ) )
- Opis: W tym miejscu następuje kluczowa operacja – obliczenie nowej ceny produktu po zastosowaniu rabatu i aktualizacja ceny produktu w koszyku.
Informowanie klienta o zastosowanym rabacie
wc_add_notice( $message, 'notice' )
- Opis: Ta linia kodu odpowiada za wyświetlenie komunikatu w koszyku, który informuje klienta o zastosowanym rabacie, zwiększając przez to przejrzystość i zadowolenie klienta z procesu zakupowego.