Jak programowo tworzyć unikalne kody kuponów w WooCommerce?
Opublikowany: 2020-07-06W naszym poprzednim poście omówiliśmy, w jaki sposób można automatycznie zastosować kod kuponu do koszyka WooCommerce. Tam użyliśmy ogólnego kodu kuponu, który jest tworzony w menu WooCommerce -> Kupony dla wszystkich zamówień złożonych przez różnych klientów.
Ale czasami jako właściciel sklepu chcesz utworzyć unikalny kod kuponu dla każdego klienta w Twojej witrynie w określonych sytuacjach. Weźmy dwa przykłady, w których możesz chcieć stworzyć unikalne kody kuponów.
Przykład 1:
Jako właściciel sklepu internetowego najgorszą rzeczą, z jaką możesz się zmierzyć w cyklu zakupowym klienta, jest porzucenie koszyka. Około. Od 68 do 70% koszyków na stronie jest porzucanych przez użytkowników, a przyczyn może być wiele. Jednym z najczęstszych powodów są wyższe ceny produktów lub wysokie opłaty dodatkowe, takie jak koszty wysyłki, które są zwykle widoczne przy kasie, a nie wcześniej.
Więc tutaj, aby zminimalizować porzucanie koszyka i przekonwertować jak najwięcej użytkowników na klientów, możesz po prostu przyciągnąć ich kilkoma kuponami rabatowymi na ich zakup. W ten sposób możesz przekonwertować porzucone koszyki na odzyskane koszyki.
W takich przypadkach najlepiej jest podać unikalny kod kuponu z pojedynczym limitem użycia dla każdego porzuconego koszyka, aby uniknąć wielokrotnego użycia kodu.
Przykład 2:
Innym przykładem tworzenia unikalnych kodów kuponów byłoby dla klientów, którzy kupili raz w Twoim sklepie, ale aby zachęcić ich do zakupu większej ilości, wolisz wysłać im kupony rabatowe na następny zakup. Więc tutaj, jeśli utworzysz ogólny kod kuponu dla wszystkich klientów, mogą oni przekazać kupony innym osobom, które znają, które mogą być przez nich wykorzystane do nowych zakupów.
Tak więc tutaj kod kuponu, który jest tworzony dla powracających klientów, może zostać niewłaściwie wykorzystany. Aby tego uniknąć, lepiej utworzyć unikalny kod kuponu dla każdego klienta z limitem użytkowania ustawionym na 1.
Nie jest możliwe ręczne tworzenie unikalnych kodów kuponów dla każdego klienta z menu WooCommerce -> Kupony. Inną opcją byłoby dodanie fragmentu kodu do tworzenia wielu kuponów naraz dla różnych użytkowników, a my omówimy, jak to osiągnąć w naszym poście.
2 sposoby tworzenia unikalnych kodów kuponów w WooCommerce
Pierwszym krokiem do stworzenia unikalnego kodu kuponu byłoby utworzenie losowego ciągu dla każdego kuponu. Zostanie to utworzone za pomocą poniższego kodu.
$znaków = "ABCDEFGHJKMNPQRSTUVWXYZ23456789"; $char_length = "8"; $losowy_ciąg = substr( str_shuffle( $znaki ), 0, $długość_znaku );
W tym przypadku funkcja substr() zwraca część ciągu znaków określoną przez parametry start i length, a funkcja str_shuffle() losowo tasuje przekazany ciąg.
Po wygenerowaniu unikalnego ciągu kolejnym krokiem byłoby utworzenie kodu kuponu za pomocą fragmentu kodu. Omówimy 2 sposoby, za pomocą których możesz programowo tworzyć kody kuponów w WooCommerce .
1. Korzystanie z funkcji wp_insert_post()
Pierwszym sposobem programowego dodania kodu kuponu jest użycie funkcji wp_insert_post(), która umożliwia dodanie lub aktualizację posta WordPress. Czyli w naszym przypadku dodajemy post z typem postu shop_coupon za pomocą tej funkcji. Aby dodać meta do tworzonych kuponów, służy funkcja update_post_meta(). Musisz dodać poniższy kod do pliku functions.php motywu potomnego lub użyć dowolnej wtyczki fragmentów kodu.
$coupon_code = 'UNIKALNY KOD'; // Kod utworzony przy użyciu losowego fragmentu ciągu. $kwota = '10'; // Kwota $discount_type = 'procent'; // Typ: fixed_cart, percent, fixed_product, percent_product $kupon = tablica( 'post_title' => $coupon_code, 'post_content' => '', 'post_status' => 'opublikuj', 'post_author' => 1, 'post_type' => 'shop_coupon' ); $ new_coupon_id = wp_insert_post ( $ kupon ); // Dodaj meta update_post_meta( $new_coupon_id, 'discount_type', $discount_type ); update_post_meta( $nowy_id_kuponu, 'kwota_kuponu', $kwota ); update_post_meta( $new_coupon_id, 'individual_use', 'nie' ); update_post_meta( $new_coupon_id, 'product_ids', '' ); update_post_meta( $new_coupon_id, 'exclude_product_ids', '' ); update_post_meta( $nowy_id_kuponu, 'limit_użytkowania', '' ); update_post_meta( $nowy_id_kuponu, 'data_ważności', '' ); update_post_meta( $new_coupon_id, 'apply_before_tax', 'tak' ); update_post_meta( $new_coupon_id, 'darmowa_wysyłka', 'nie' );
2. Korzystanie z WooCommerce Rest API
Innym sposobem programowego dodawania kodu kuponu jest użycie interfejsu API WooCommerce Rest dostarczanego przez samą wtyczkę. WooCommerce ma kompletny przewodnik po interfejsie API Rest, w tym uwierzytelnianie, pobieranie danych, kupony, zamówienia itp., ale w celach informacyjnych poniżej znajduje się mały fragment, którego można użyć do tworzenia kodu kuponu.

wymagać_raz __DIR__ . '/dostawca/autoload.php'; użyj Automattic\WooCommerce\Client; użyj Automattic\WooCommerce\HttpClient\HttpClientException; $woocommerce = nowy klient( „https://example.com”, 'Klucz klienta', 'sekret_konsumenta', [ 'wp_api' => prawda, 'wersja' => 'wc/v3' ] ); $dane = [ 'kod' => '10wył', 'discount_type' => 'procent', 'kwota' => '10', 'individual_use' => prawda, 'exclude_sale_items' => prawda, 'minimum_amount' => '100,00' ]; $woocommerce->post( 'kupony', $dane );
Jest to podstawowy fragment kodu do tworzenia kodu kuponu z 10% rabatem na zamówienie, którego łączna wartość zamówienia przekracza 100 USD. Kod kuponu to '10off' i może być wykorzystany tylko przez jednego klienta. Są to tylko podstawowe właściwości wymagane do tworzenia kodu kuponu, ale jeśli chcesz dodać dodatkowe właściwości, oto ich lista.
id – ( int ) Unikalny identyfikator obiektu .
code – (string)(Wymagane) Kod kuponu.
kwota – (string) Kwota rabatu. Powinna być zawsze numeryczna, nawet przy ustawianiu wartości procentowej.
date_created – (data-godzina) Data utworzenia kuponu w strefie czasowej witryny.
date_created_gmt – (data-godzina) Data utworzenia kuponu, jako GMT.
date_modified – (data-godzina) Data ostatniej modyfikacji kuponu w strefie czasowej witryny.
date_modified_gmt – (data-godzina) Data ostatniej modyfikacji kuponu, jako GMT.
Discount_type – (string) Określa rodzaj rabatu, który zostanie zastosowany. Opcje: procent, fixed_cart i fixed_product. Wartość domyślna to fixed_cart .
description – (string) Opis kuponu.
date_expires – (string) Data wygaśnięcia kuponu w strefie czasowej witryny.
date_expires_gmt – (string) Data wygaśnięcia kuponu, jako GMT.
usage_count – (int) ile razy kupon został już wykorzystany.
Individual_use – (bool) Jeśli true, kupon może być używany tylko indywidualnie. Inne zastosowane kupony zostaną usunięte z koszyka. Wartość domyślna to false .
product_ids – (tablica) Lista identyfikatorów produktów, na których kupon może być użyty.
exclude_product_ids – (tablica) Lista identyfikatorów produktów, na których kupon nie może być użyty.
usage_limit – (int) Ile razy można łącznie wykorzystać kupon.
usage_limit_per_user – (int) Ile razy kupon może zostać wykorzystany na klienta.
limit_usage_to_x_items – (int) Maksymalna liczba pozycji w koszyku, na które można zastosować kupon.
free_shipping – (bool) Jeśli true i jeśli metoda darmowej wysyłki wymaga kuponu, ten kupon umożliwi darmową wysyłkę. Wartość domyślna to false .
product_categories – (tablica) Lista identyfikatorów kategorii, których dotyczy kupon.
exclude_product_categories – (tablica) Lista identyfikatorów kategorii, których kupon nie dotyczy.
exclude_sale_items – (bool) Jeśli true, ten kupon nie zostanie zastosowany do przedmiotów, które mają ceny sprzedaży. Wartość domyślna to false .
minimum_amount – (string) Minimalna kwota zamówienia, która musi znajdować się w koszyku, zanim kupon zostanie zastosowany.
maximum_amount – (string) Maksymalna kwota zamówienia dozwolona przy wykorzystaniu kuponu.
email_restrictions – (tablica) Lista adresów e-mail, które mogą korzystać z tego kuponu.
used_by – (tablica) Lista identyfikatorów użytkowników (lub adresów e-mail gości), którzy użyli kuponu.
meta_data – (tablica) Metadane.
Wniosek
Wspomniane powyżej fragmenty kodu to tylko przykład tworzenia kodu kuponu. Aby móc z nich korzystać na swojej stronie, należy dołączyć do nich dowolne haki lub filtry, które są wymagane. Na przykład może być używany na dowolnym haku na koszyku podczas śledzenia porzucenia koszyka lub może być używany w zadaniu Cron, które będzie uruchamiane co tydzień, aby wysyłać aktualizacje e-mail do klientów.
Skorzystaj z unikalnych kodów kuponów i zdobądź zadowolonych powracających klientów swojej witryny.