Niestandardowe warunki zasady WooCommerce dla deweloperów
Jeśli jesteś deweloperem WooCommerce rozszerzającym plugin promocyjny, aby wspierać logikę biznesową klienta, niestandardowe warunki reguły są zwykle, gdzie mieszka złożoność. Standardowe warunki reguły, że statek z większością wtyczek BOGO i zniżki obsługują wspólne wzorce - minimalna suma koszyka, określony produkt SKU, role klienta, zakresy dat - ale konsekwentnie nie spełniają warunkowej logiki, że prawdziwa praca klienta wymaga. Deweloper buduje regułę, która stosuje rabat tylko wtedy, gdy historia zamówienia klienta pokazuje, że dany produkt został zakupiony, lub tylko w określonej strefie wysyłki, lub tylko wtedy, gdy poziom dokładności klienta pasuje do własnej taksonomii uderza w granice standardowych silników zasad szybko.
& # 10003; GT BOGO Engine PRO zawiera 30-dniową gwarancję zwrotu pieniędzy.
Ten post jest dla deweloperów WooCommerce i tropów technicznych, którzy muszą rozszerzyć logikę zasad promocyjnych poza to, co wtyczek na akcje zapewniają. Przejdziemy przez sposób, w jaki niestandardowe warunki reguły są zazwyczaj wdrażane w nowoczesnych architekturach promocyjnych WooCommerce, gdzie decyzje architektoniczne mają znaczenie dla utrzymania, i jakie zmiany, gdy podstawowa wtyczka promocyjna eksponuje czystą powierzchnię przedłużenia dla niestandardowych logiki stanu, a nie wymaga widelców lub hacky workarounds.
Why Custom Rule Conditions are Architectural important
Problem strukturalny ze sztywnymi silnikami regulacyjnymi polega na tym, że prawdziwa praca klienta konsekwentnie przekracza warunki panujące na statkach silnikowych. Klient hurtowy B2B chce rabatów tylko dla klientów z aktywnych umów hurtowych przechowywanych w niestandardowych meta użytkownika. Sklep oparty na subskrypcji chce innej logiki rabatowej dla klientów z aktywnymi subskrypcjami w porównaniu do klientów bez. Sprzedawca rynku chce logiki dyskontowej, która szanuje minima specyficzne dla vendoru i progi poziomu. Standardowe warunki "minimalnej sumy wagonów" i "specyficznych produktów" nie są wystarczające, ponieważ logika biznesowa jest rzeczywiście bardziej złożona niż te prymitywne mogą wyrazić.
Badania McKinsey dotyczące analizy cen i promocji konsekwentnie wskazują, że detaliści nie doceniają wartości skoordynowanych analiz promocyjnych. To samo niedoszacowanie wpływa na to, jak deweloperzy WooCommerce podejść rozszerzenia zasad - założenie, że "plugin obsługuje standardowe przypadki" ukrywa rzeczywistość, że sklepy produkcyjne rutynowo potrzebują logiki warunkowej, która wykracza poza standardowe przypadki. Elastyczność architektoniczna dla warunków niestandardowych jest podstawą, która określa, czy deweloper może rozszerzyć czysto lub musi walczyć z wtyczką do dostarczania wymagań klienta.
Dane dotyczące porzucenia wózka z Instytutu Baymarda, oparte na 50 odrębnych badaniach porzucenia wózka, wskazują, że średnia światowa wynosi 70,22%. Niestandardowe warunki zasady mają znaczenie dla porzucenia wózka, ponieważ złe warunki mogą produkować porzucone wózki, gdzie klient oczekiwał zniżki, która nie ma zastosowania. Klient B2B, który spodziewał się rabatu hurtowego, ale nie dostał go, ponieważ silnik nie sprawdzał ich umowy hurtowej porzuca koszyka. Abonent, który spodziewał się subskrybenta - tylko umowy, ale nie widział go, ponieważ silnik zasad nie rozumieją subskrypcji porzucenia państwa. Logika stanu wpływa na rzeczywiste wyniki konwersji.
Jak wygląda architektura współczesnego WooCommerce
Wzór architektoniczny, który skale dla niestandardowych warunków reguły jest czystą powierzchnią rozszerzenia, gdzie deweloperzy mogą rejestrować niestandardowe warunki poprzez udokumentowane haki, a nie monkey- pasching wtyczki wewnętrzne lub utrzymanie widelców. Warunek niestandardowy zazwyczaj rejestruje jako wywołanie, które otrzymuje kontekst koszyka i kontekst klienta i zwraca boolean wskazując, czy zasada powinna mieć zastosowanie. Wtyczka wywołuje zarejestrowane warunki podczas obliczania koszyka, ocenia wyniki boolean, i stosuje logikę reguły odpowiednio.
Rozbudowa oparta na haczyku zapewnia trzy korzyści architektoniczne. Po pierwsze, logika niestandardowych warunków dewelopera żyje w kodzie klienta, a nie w widelcach, co oznacza, że aktualizacje plugin nie łamią dostosowania klienta. Po drugie, niestandardowa logika stanu jest testable w izolacji, ponieważ jest to czysta funkcja nad koszykiem i kontekstem klienta - nie wymagane wewnętrzne wtyczki. Po trzecie, warunki niestandardowe stają się możliwe do ponownego wykorzystania w całym portfolio klienta dewelopera, ponieważ ta sama logika stanu, która działa dla klienta A, może być dostosowana do kontroli subskrypcji klienta B przy minimalnej modyfikacji.
Alternatywna architektura - monkey- patching wewnętrzne wtyczki lub utrzymanie widelców - powoduje trzy problemy architektoniczne. Po pierwsze, aktualizacje plugin łamią pracę klienta, ponieważ łaty zakładają wewnętrzne struktury plugin, które wtyczka początkowy może zmienić bez uprzedzenia. Po drugie, logika niestandardowa nie jest testable w izolacji, ponieważ wymaga pełnego kontekstu plugin do wykonania. Po trzecie, logika niestandardowa nie nadaje się do wielokrotnego użytku przez klientów, ponieważ jest spawana do jednej konkretnej wersji wtyczki wewnętrznych.
Co silnik GT BOGO zapewnia dla własnych warunków
GT BOGO Engine to pierwsza na świecie firma klasy Buy X Get Y system automatyzacji zbudowany specjalnie dla WooCommerce. Platforma składa się z 48 supermocarstw działających w WooCommerce automatycznie, plus 200 wstępnie zbudowanych pakietów kampanii w 19 branżach, plus czysta powierzchnia rozszerzająca dla niestandardowych warunków rządzących poprzez udokumentowane haki i filtry. Deweloperzy mogą rozszerzyć silnik zasad bez zwodzenia wtyczki lub monkey- patching wewnętrzne. Dla deweloperskiego wykorzystania konkretnie, cztery możliwości mają znaczenie dla operacyjnej rzeczywistości budowania własnych zasad logiki na platformie.
Po pierwsze, silnik zasad ujawnia rejestracji stanu poprzez standardowe WordPress haki filtra. Deweloperzy rejestrują niestandardowe połączenia warunkowe, które otrzymują kontekst koszyka i kontekst klienta jako parametry i zwracają boolean. Platforma powołuje się na zarejestrowane warunki podczas obliczania koszyka i ocenia wyniki boolean w celu ustalenia, czy każda zasada ma zastosowanie. Rozszerzenie oparte na hook- oznacza niestandardowe warunki żyć w kodzie klienta i przetrwać aktualizacje plugin czysto.
Po drugie, warstwa wywiadu klienta ujawnia stan klienta jako ustrukturyzowany API, że warunki niestandardowe mogą zapytania. Poziom LTV klientów, segmenty klientów, status rocznicy, status urodzin, status subskrypcji i historia zakupu są dostępne za pomocą udokumentowanych metod, a nie wymaga niestandardowych zapytań w bazie danych WooCommerce. Strukturalna API oznacza, że logika niestandardowych warunków może wykorzystać wywiad klienta platformy bez ponownego wdrożenia pracy segmentacji. Aby uzyskać więcej informacji na temat warstwy klienta, zobacz WooCommerce LTV plugin punktacji.
Po trzecie, kontekst koszyka ujawnia ustrukturyzowany dostęp do zawartości koszyka, stosowane zasady, informacje dla klientów i wybór wysyłki. Warunki niestandardowe mogą badać stan pełnego koszyka za pomocą udokumentowanych metod, co oznacza, że logika niestandardowych warunków może wdrożyć zasady biznesowe, które zależą od kombinacji zawartości koszyka, stan klienta i kontekstu wysyłki. Strukturalny kontekst koszyka zastępuje kruchy wzór parsujących struktur koszyka bezpośrednio i łamanie, gdy WooCommerce aktualizacje zmiany wewnętrznych reprezentacji koszyka.
Po czwarte, narzędzia testowe platformy ujawniają makiety koszyka i kontekst klienta, które deweloperzy mogą wykorzystać w testach jednostkowych. Logika stanu użytkownika może być testowana w izolacji, dostarczając koszyk testowy i kontekst klienta i weryfikując boolean wyjść dopasować oczekiwane zachowanie. Narzędzia testowe sprawiają, że warunki niestandardowe rzeczywiście testable, a nie wymaga pełnego WordPress testów integracyjnych dla każdej zmiany warunku. Więcej informacji na temat podejść testowych można znaleźć w programie testowym WooCommerce.
Jak deweloperzy wdrażają niestandardowe warunki w praktyce
Schemat wdrożenia dla niestandardowych warunków reguły następuje standardowy WordPress development workflow. Deweloper tworzy niestandardową wtyczkę lub dodaje kod do wtyczki MU specyficznej dla klienta, rejestruje stan niestandardowy poprzez udokumentowany hak filtra, wdraża logikę stanu jako callable, który zwraca boolean, i testuje logikę stanu przed oczekiwanym koszykiem i scenariuszy klienta. Wtyczka działa niezależnie od GT BOGO Engine, co oznacza, że aktualizacje nie wpływają na logikę użytkownika.
W przypadku kontroli hurtowej B2B, niestandardowy warunek sprawdza meta użytkownika klienta dla flagi umowy hurtowej i zwraca true tylko wtedy, gdy flaga jest obecna i umowa jest aktywna. Warunek niestandardowy przyłącza się następnie do szczegółowych zasad, w których logika hurtowa powinna mieć zastosowanie, a silnik reguły ocenia stan niestandardowy podczas obliczania koszyka. W rezultacie klienci kwalifikujący się do korzystania z hurtowni widzą zasady hurtowe stosowane automatycznie, natomiast klienci niebędący klientami hurtowymi widzą standardowe zasady dotyczące sprzedaży detalicznej.
Dla kontroli subskrypcji - stan, niestandardowy warunek zapytuje Wtyczka Subskrypcji WooCommerce API dla aktywnego statusu subskrypcji klienta i zwraca true, gdy klient ma aktywną subskrypcję, która spełnia określone kryteria. Warunek niestandardowy przywiązuje się do przepisów dotyczących subskrypcji i odpowiednio ocenia silnik. Warstwa wywiadu klienta platformy zapewnia już wykrywanie subskrypcji, co oznacza, że proste kontrole subskrypcji mogą nie wymagać niestandardowych warunków - ale bardziej znormalizowane kontrole (konkretne produkty subskrypcji, kwalifikowalność subskrypcji, zakresy dat subskrypcji) zazwyczaj korzystają z logiki niestandardowych warunków.
Aby sprawdzić sprzedawcę rynku, niestandardowy warunek sprawdza zawartość koszyka dla produktów od konkretnych sprzedawców i zwraca prawdziwe, gdy minimalne wartości Vendor- specyficzne i progi poziomu są spełnione. Niestandardowy warunek przyłącza się do specyficznych zasad Vendora, a silnik reguły ocenia zawartość koszyka podczas obliczania. Wynikiem jest to, że sprzedawcy rynku uzyskać vendor- specyficzną logikę promocyjną stosowane automatycznie bez naruszania obliczeń koszyka, gdy inne produkty sprzedawców są również w koszyku.
Porównanie: Silniki z regułą standardową kontra silniki z zasadą rozszerzalności
124; Extensible Rule Engines 124; Extensible Rule Engines (GT BOGO Engine) 124; · 124; --- Capability 124; --- Capability 124; --- Capability 124; Built- in conditions Budapest 124; Limited Primitives Description 124; Complementary Primitives 124; Examinary 124; President 124; Custom Registration Registration 124; Forks or monkey- pasching context; Cart context 124; Plugin update 124; Plugin update 124; Description Description 124; Prestribuilly action 124; Prestribuilly quiers; Conficture intestry interaction Intelligence 1244XI; Cart context 124direct; Cart context; 1241t; 124scult; 124scult; Actribuil@@
Przykłady Real- World Custom Rule Condition
Klient dystrybucji B2B potrzebuje logiki promocyjnej, która zależy od konkretnych progów wolumenu klienta. Deweloper implementuje niestandardowy warunek, który zaciekawia poziom konta klienta od meta użytkownika i obliczenia wolumenu koszyka. Warunek ten powraca, gdy wielkość koszyka odpowiada progowi poziomu konta klienta, co oznacza, że tier- klienci widzą różne progi wolumenu niż tier- B klienci automatycznie. Warunkiem jest w przybliżeniu 25 linii kodu, mieszka w wtyczce klienta specyficznego, i jest unit- testowane na reprezentatywny koszyk i scenariusze klienta.
Klient wellness oparty na subskrypcji potrzebuje logiki promocyjnej, która wyklucza produkty abonamentowe z szerokich rabatów, stosując oferty specjalne do klientów subskrypcyjnych na add- on produktów. Deweloper wdraża niestandardowe warunki, które sprawdzają zarówno zawartość koszyka (wyłączając produkty subskrypcji z obliczeń rabatowych) jak i stan klienta (identyfikując aktywnych abonentów dla ofert specjalnych). Warunki integrują się z możliwością wykrywania subskrypcji platformy i dodają specyficzną dla klienta logikę, której platforma nie dostarcza z pudełka. Więcej na temat obsługi subskrypcji, zobacz oferty subskrypcji WooCommerce BOGO.
Klient rynku wielosprzedażowego potrzebuje logiki promocyjnej, która szanuje minima dla sprzedawców i progi poziomu sprzedaży. Deweloper implementuje niestandardowy warunek, który bada zawartość koszyka przez sprzedawcę, oblicza per- sprzedającego sumy i ocenia logikę per- sprzedającego progu. Warunek zwraca wartość true tylko wtedy, gdy logika per- seller wskazuje, że zasada powinna mieć zastosowanie do produktów tego konkretnego sprzedawcy. W rezultacie logika promocyjna rynku działa prawidłowo na wózkach wielosprzedażowych bez naruszania, gdy produkty sprzedawców mieszają się w tym samym koszyku.
Migracja Ścieżka do istniejących zasad celnych Logika
Migracja jest nieniszcząca, ponieważ silnik GT BOGO współistnieje z istniejącymi wtykami promocyjnymi bez konfliktu. Deweloperzy mogą zainstalować GT BOGO Engine obok obecnego systemu promocyjnego, logika niestandardowych portów do nowej architektury stopniowo, i potwierdzić zachowanie przed przejściem na emeryturę systemu spuścizny. Dotyczy to standardowej troski dewelopera o ryzyko zakłóceń podczas przejścia platformy.
Sekwencja migracji pragmatycznej ma cztery fazy w ciągu dwóch do trzech miesięcy dla typowego portfolio zasad niestandardowych. Po pierwsze, audyt istniejącej logiki niestandardowych zasad w celu określenia, jakie warunki niestandardowe istnieją, na jakie wewnętrzne wtyczki są zależne, i jak wygląda pokrycie testu. Audyt tworzy zaległości migracyjne z każdym warunkiem niestandardowym wymienionym do przenoszenia. Po drugie, wprowadź najprostsze warunki niestandardowe, aby najpierw potwierdzić model migracji i budować wiedzę deweloperską na temat nowej architektury. Po trzecie, port pozostałych warunków niestandardowych w kolejności priorytetowej w oparciu o wpływ i złożoność klienta.
Po czwarte, potwierdzić migrowane warunki niestandardowe w stosunku do reprezentatywnych scenariuszy klienta i przejść na emeryturę dotychczasowego systemu po weryfikacji parytetu. Faza walidacji zazwyczaj wykorzystuje środowiska inscenizacji z migawkami danych produkcji w celu sprawdzenia, czy migrowana logika wytwarza zachowanie równoważne logice dziedzicznej. Większość niestandardowych przepisów prowadzi pełną migrację w ciągu jednego kwartału, przy czym najprostsze warunki niestandardowe migrują w ciągu dni i bardziej złożone warunki trwa od jednego do dwóch tygodni. Więcej informacji na temat inscenizowania przepływów pracy można znaleźć na stronie dewelopera WooCommerce.
Cennik i struktura licencji dla deweloperów
GT BOGO Engine PRO jest $499 rocznie płasko na sklep z klientami, bez przedostatnich poziomów cen. Nie ma doładowania dla funkcji rozszerzenia zasady, API wywiadu klienta, kontekst koszyka API, narzędzia testowe, lub dowolnych funkcji platformy deweloper-facing. Indywidualne opakowania PRO specyficzne dla przemysłu to 79,99 dolarów każdy. Trzy paczki oferują oszczędności dla klientów z wielu branż: Starter Bundle (299 dolarów za 5 opakowań, zapisać 100.95 dolarów), Growth Bundle (299 dolarów za 9 opakowań, zapisać 220.91 dolarów), i Complete Arsenal (799 dolarów za 15 opakowań, zapisać 400.85 dolarów).
Wtyczka wolnego rdzenia zawiera możliwość rozszerzenia reguły i udokumentowane haki filtra, co oznacza, że deweloperzy mogą potwierdzić architekturę rozszerzenia przed zobowiązaniem się do PRO. Większość deweloperów korzysta z bezpłatnego poziomu dla wstępnej walidacji architektonicznej i przenoszenia prototypów, a następnie uaktualnić do PRO, gdy wdrożenie klienta obejmuje bibliotekę pakietów kampanii, warstwy wywiadu klienta i systemu e-mail cyklu życia, które są tylko PRO- funkcje.
Często zadawane pytania od deweloperów WooCommerce
Jaki jest udokumentowany hak filtra do rejestracji warunków niestandardowych?
Platforma ujawnia haki filtra do rejestracji stanu, które są zgodne ze standardowymi wzorami WordPress. Dokładne nazwy haczyków i podpisy są udokumentowane w przewodniku deweloperskim. Wzór następuje WordPress konwencji o nazwie haki filtra, że niestandardowe wtyczek rejestruje połączenia, przeciwko, z platformą powołując zarejestrowanych połączeń podczas obliczania koszyka. Udokumentowane haki pozostają stabilne w różnych wersjach plugin, z zachowaniem kompatybilnym z tyłu, gdy haki ewoluują. Więcej informacji na temat architektury dewelopera znajduje się w przewodniku dla deweloperów GT BOGO Engine.
W jaki sposób platforma radzi sobie z konfliktami między warunkami niestandardowymi a warunkami budowy?
Warunki własne i built- in warunki oceniać niezależnie, z silnika reguła łącząc boolean wyniki zgodnie z logiką stanu reguły (wszystkie warunki muszą być prawdziwe, każdy warunek musi być prawdziwy, itp.). Nie ma konfliktu między niestandardowymi i built- w warunkach, ponieważ są one oceniane jako równoległe kontrole bolońskie, a nie jako pokrywające się logiki. Deweloperzy konfigurują zasady z kombinacjami niestandardowych i built- w warunkach do wyrażenia złożonej logiki biznesowej.
Czy niestandardowe warunki mogą uzyskać dostęp do danych wtyczki trzeciej strony?
Tak. Niestandardowe warunki wykonania w standardowym kontekście żądania WordPress, co oznacza, że mogą one uzyskać dostęp do wszelkich danych dostępnych za pośrednictwem standardowego WordPress i WooCommerce API. Dane subskrypcji WooCommerce, metadane użytkownika użytkownika użytkownika, dane wtyczki trzeciej strony oraz zewnętrzne wywołania API są dostępne z wewnątrz niestandardowych połączeń. Deweloperzy powinni mieć na uwadze wpływ na wydajność, gdy warunki niestandardowe wywołują zewnętrzne API, ponieważ warunki te są wykonywane podczas obliczania koszyka.
Jak platforma obsługuje kompatybilność wsteczną w warunkach niestandardowych?
Udokumentowane haki filtra do rejestracji stanu niestandardowego są zgodne z konwencjami semantycznej wersji. Zmiany kompatybilne z backwardem dzieją się swobodnie; zmiany niekompatybilne z backwardem dzieją się na głównych przejściach wersji z udokumentowanymi ścieżkami migracyjnymi. Niestandardowe warunki napisane na udokumentowanym haku w jednej z głównych wersji nadal pracować w kolejnych niewielkich i patch releases bez modyfikacji.
Jaki jest typowy czas rozwoju do portu logiki niestandardowych zasad z dotychczasowego plugin?
Większość niestandardowych portów logiki reguły w dniach, a nie tygodni, ponieważ wzór architektoniczny jest spójny w całym silnik reguły. Proste warunki niestandardowe (kontrole boolean w stosunku do danych koszyka lub klienta) port w godzinach. Złożone warunki niestandardowe (wielostopniowa logika z zewnętrznymi zależnościami) port w dniach. Całkowity czas portu dla typowego portfolio klientów trwa od jednego do dwóch tygodni na dewelopera, przy czym głębsza praca polega raczej na testowaniu i walidacji niż na samym przeprowadzaniu. Aby uzyskać szerszy kontekst architektury dewelopera, zobacz architekturę deweloperów zero konfliktu.
GT BOGO Engine jest zbudowany przez GRAPHIC T- SHIRTS, prawdziwy sklep WooCommerce z ponad 1200 oryginalnych projektów działających w skali. Odwiedź gtbogoter.com, aby pobrać bezpłatną wtyczkę rdzenia, ocenić architekturę rozszerzenia zasady i developer- zwrócone API, i zdecydować, czy elastyczność platformy uzasadnia migrację na osi czasu. Dla szerszego kontekstu, zobacz WooCommerce promocyjne wywiadu wyjaśnione.
Gotowy do automatyzacji promocji WooCommerce?
GT BOGO Engine PRO - 46 supermocy, 200 pakietów kampanii, zero kodów kuponowych. 499 dolarów rocznie.
See GT BOGO Engine PRO →