Wo WooCommerce Początkujący

Smart Bundle Engine: dokumentacja

Instalacja, analiza współwystąpień, kontrola marży i wyświetlanie zestawów WooCommerce.

Zaktualizowano Wersja modułu 1.0.0

Prezentacja

Smart Bundle Engine analizuje historię zamówień WooCommerce, aby wykryć produkty faktycznie kupowane razem, automatycznie generuje odpowiadające im zestawy i wyświetla je na karcie produktu, w koszyku i w e-mailu po zakupie, z kontrolą marży, która w razie potrzeby automatycznie ogranicza rabat.

Instalacja

  1. Pobierz plik df-smart-bundle.zip ze swojego konta klienta DataFirefly.
  2. W administracji WordPressa przejdź do Wtyczki → Dodaj nową → Wyślij wtyczkę na serwer.
  3. Wybierz ZIP, kliknij Zainstaluj teraz i włącz wtyczkę.
  4. W pasku bocznym administracji pojawia się nowe menu Smart Bundles.

Wymagania: WordPress 6.0+, WooCommerce 7.0+, PHP 7.4+. Zgodność z HPOS (High-Performance Order Storage) jest deklarowana natywnie.

Przy aktywacji wtyczka tworzy 4 dedykowane tabele (df_sbe_cooccurrence, df_sbe_bundles, df_sbe_bundle_items, df_sbe_analysis_state) i planuje crona analizy.

Szybki start

  1. Przejdź do Smart Bundles → Analiza i kliknij Uruchom analizę teraz.
  2. Po zakończeniu analizy tabela Najlepsze powinowactwa zakupowe pokazuje wykryte pary wraz z metrykami (wystąpienia, ufność, lift).
  3. Jeśli generowanie automatyczne jest włączone (domyślnie tak), zestawy tworzą się same: sprawdź je w Smart Bundles → Zestawy.
  4. Odwiedź odpowiednią kartę produktu po stronie sklepu: blok „Często kupowane razem” pojawia się pod podsumowaniem produktu.

Wskazówka: analiza potrzebuje co najmniej kilkudziesięciu zamówień zawierających kilka produktów, aby dać użyteczne powinowactwa. Jeśli Twoja historia jest uboga, obniż tymczasowo próg minimalnych współwystąpień do 2 w ustawieniach.

Analiza współwystąpień

Silnik przechodzi przez zamówienia zrealizowane i w trakcie realizacji w skonfigurowanym oknie analizy (domyślnie 180 dni), partiami po 200 zamówień. Dla każdego zamówienia zawierającego kilka produktów wyodrębniane i zliczane są wszystkie pary.

Trzy metryki

  • Wystąpienia: liczba zamówień zawierających parę A+B.
  • Ufność: P(B|A) w procentach, czyli w jakim odsetku zamówień zawierających A występuje też B. Ufność 20 oznacza, że B pojawia się w 20 % zamówień zawierających A.
  • Lift: stosunek zaobserwowanej częstości pary do częstości oczekiwanej, gdyby A i B były niezależne. Lift powyżej 1 wskazuje realne powinowactwo, powyżej 2 powinowactwo silne.

Planowanie

Analiza działa automatycznie przez WP-Cron (hook df_sbe_run_analysis). Każde uruchomienie przetwarza do 25 partii po 200 zamówień, a następnie wznawia pracę przy kolejnym wyzwoleniu dzięki trwałemu kursorowi: żadne zamówienie nie jest przetwarzane dwa razy. Przycisk Zresetuj stan czyści tabele analizy i zaczyna od zera.

Uwaga: jeśli WP-Cron jest wyłączony na Twoim serwerze (DISABLE_WP_CRON), upewnij się, że cron systemowy regularnie wywołuje wp-cron.php, inaczej analiza uruchomi się wyłącznie ręcznie.

Automatyczne generowanie zestawów

Po każdej pełnej analizie silnik wybiera pary przekraczające Twoje progi i tworzy odpowiadające im zestawy. Wyborem sterują trzy ustawienia:

  • Minimalne współwystąpienia (domyślnie 3): minimalna liczba zamówień zawierających parę.
  • Minimalna ufność (domyślnie 10 %): próg ufności, poniżej którego para jest pomijana.
  • Maksymalna liczba zestawów na produkt (domyślnie 3): zapobiega przesyceniu jednego produktu.

Wybrane pary są sortowane według wyniku (lift × wystąpienia). Zestawy utworzone automatycznie otrzymują pochodzenie „Auto”; istniejące już zestawy z tymi samymi produktami nigdy nie są duplikowane. Zestawy ręczne są zawsze zachowywane przy ponownych analizach.

Zarządzanie zestawami

Ekran Smart Bundles → Zestawy wymienia wszystkie zestawy z ich produktami, rabatem, minimalną marżą, kontekstami wyświetlania, wyświetleniami i konwersjami. Możesz filtrować po statusie, pochodzeniu (auto/ręczne) albo wyszukiwać swobodnie.

Tworzenie albo edycja zestawu

  1. Kliknij Nowy zestaw albo Edytuj przy istniejącym zestawie.
  2. Wyszukaj i dodaj produkty (minimum 2): ilość każdej pozycji jest regulowana, a kolejność zmienia się przeciąganiem.
  3. Ustaw rabat (procent albo kwota stała) i minimalną marżę.
  4. Zaznacz pożądane konteksty wyświetlania: karta produktu, koszyk, e-mail.
  5. Priorytet określa kolejność wyświetlania, gdy kwalifikuje się kilka zestawów (wyższy = pierwszy).

Przy istniejącym zestawie tabela Podgląd wyceny pokazuje na żywo sumę częściową, szacowany koszt, rabat żądany i zastosowany, cenę końcową oraz rzeczywistą marżę.

Kontrola marży

Każdy zestaw ma próg minimalnej marży (w % ceny końcowej). Silnik wylicza odpowiadającą jej cenę minimalną:

cena_min_koncowa = koszt_calkowity / (1 − marza_min / 100)

Jeśli żądany rabat sprowadziłby cenę końcową poniżej tego progu, zostaje automatycznie ograniczony do maksymalnego zgodnego rabatu. Rabat pokazywany w sklepie jest więc zawsze bezpieczny.

Źródło kosztu

Koszt każdego produktu ustalany jest w tej kolejności:

  1. Meta produktu: domyślnie klucz _df_cost_price, konfigurowalny w ustawieniach (zgodny z Cost of Goods i innymi wtyczkami cen zakupu).
  2. Współczynnik zapasowy: dla produktów bez wpisanego kosztu przyjmowany jest procent ceny sprzedaży (domyślnie 50 %).

Wskazówka: uzupełnij rzeczywiste koszty najpierw przy najlepiej sprzedających się produktach: ograniczanie marży będzie wtedy dokładne na zestawach, które liczą się najbardziej.

Wyświetlanie w sklepie

Karta produktu

Blok wstawia się na hooku woocommerce_after_single_product_summary z konfigurowalnym priorytetem (domyślnie 15, tuż przed produktami powiązanymi). Wyświetla miniatury produktów połączone znakami „+”, przekreśloną sumę częściową, cenę zestawu i przycisk dodania jednym kliknięciem.

Koszyk

Propozycje pojawiają się pod tabelą koszyka (woocommerce_after_cart_table). Zestawy, których wszystkie produkty są już w koszyku, są automatycznie ukrywane.

E-mail po zakupie

Blok z propozycją wstawiany jest w e-maile Zamówienie zrealizowane i Zamówienie w realizacji (tylko do klientów), w wariantach HTML i tekstowym, z bezpośrednim linkiem powrotnym do sklepu.

Każdy kontekst można włączyć niezależnie, a jego tytuł jest konfigurowalny w ustawieniach.

Stosowanie rabatu

Wtyczka nigdy nie zmienia cen produktów. Gdy zestaw zostanie dodany do koszyka, każda pozycja otrzymuje wewnętrzny znacznik; gdy tylko wszystkie pozycje zestawu są obecne, rabat stosowany jest jako ujemna opłata WooCommerce („Rabat zestawu”). Takie podejście:

  • zachowuje ceny pozycji i raporty sprzedaży;
  • pozostaje zgodne z podatkami, kosztami wysyłki i kodami rabatowymi;
  • automatycznie usuwa rabat, jeśli pozycja zestawu zostanie usunięta z koszyka.

Śledzenie wyników

Każde wyświetlenie zestawu zwiększa jego licznik wyświetleń; każde zamówienie zawierające kompletny zestaw zwiększa jego konwersje (przy przejściu w status „w realizacji” albo „zrealizowane”, z zabezpieczeniem przed podwójnym liczeniem). Współczynnik konwersji per zestaw wyświetlany jest na liście zestawów, a ekran Analiza prezentuje statystyki globalne: przeanalizowane zamówienia, wykryte pary, aktywne zestawy oraz łączne wyświetlenia i konwersje.

Przegląd ustawień

Analiza współwystąpień

  • Okno analizy (dni): domyślnie 180. Zamówienia zrealizowane i w realizacji z tego okresu.
  • Minimalne współwystąpienia: domyślnie 3.
  • Minimalna ufność (%): domyślnie 10.
  • Automatyczne generowanie zestawów: domyślnie włączone.
  • Maksymalna liczba zestawów na produkt: domyślnie 3.

Wycena i marża

  • Rabat domyślny (%): 10, stosowany do zestawów generowanych automatycznie.
  • Domyślna marża minimalna (%): 20.
  • Klucz meta ceny zakupu: _df_cost_price.
  • Zapasowy współczynnik kosztu (%): 50.

Wyświetlanie

  • Konteksty: karta produktu / koszyk / e-mail, włączane osobno.
  • Priorytet hooka karty produktu: domyślnie 15.
  • Tytuły: konfigurowalny tytuł dla każdego kontekstu.

Wielojęzyczność

Wtyczka dostarczana jest z 5 językami (FR, EN, ES, DE, IT) w formacie .po/.mo plus plik .pot na własne tłumaczenia (textdomain df-smart-bundle). Zgodna z Polylangiem i WPML, wyświetlany język podąża za locale witryny albo użytkownika.

Deinstalacja

Wyłączenie wtyczki po prostu usuwa zaplanowanego crona, a Twoje dane pozostają. Usunięcie wtyczki (przez Wtyczki → Usuń) uruchamia uninstall.php, który trwale kasuje 4 tabele, wszystkie opcje i metadane zamówień utworzone przez wtyczkę (zgodnie z HPOS).

Rozwiązywanie problemów

Nie generuje się żaden zestaw

  • Sprawdź, czy analiza rzeczywiście zadziałała: Smart Bundles → Analiza powinna pokazywać liczbę przeanalizowanych zamówień większą od zera.
  • Obniż progi (minimalne współwystąpienia, minimalna ufność), jeśli Twoja historia jest krótka.
  • Sprawdź, czy automatyczne generowanie jest włączone w ustawieniach.

Zestaw nie pojawia się w sklepie

  • Zestaw musi być aktywny, a odpowiedni kontekst zaznaczony.
  • Zestaw, którego wyliczony rabat wynosi zero (pełne ograniczenie marżą), jest ukrywany na karcie produktu.
  • W koszyku zestaw już kompletny jest ukrywany celowo.
  • Wyczyść cache stron, jeśli używasz wtyczki cache.

Zastosowany rabat jest niższy niż skonfigurowany

To działanie ograniczenia marżą: całkowity koszt zestawu nie pozwala na żądany rabat bez zejścia poniżej minimalnej marży. Sprawdź koszty produktów albo skoryguj próg marży zestawu.

FAQ

Czy wtyczka działa z produktami wariantowymi?

Analiza i zestawy działają na poziomie produktu nadrzędnego. Warianty tego samego produktu liczone są razem.

Czy mogę wykluczyć niektóre produkty z analizy?

Nie w wersji 1.0.0: po prostu usuń albo wyłącz niechciane zestawy; nie zostaną odtworzone, jeśli usuniesz je po wyłączeniu automatycznego generowania.

Czy zestawy są zgodne z kodami rabatowymi?

Tak. Rabat zestawu to ujemna opłata niezależna od kuponów WooCommerce; oba się kumulują.

Jaki jest wpływ na wydajność?

Analiza działa w tle partiami. Po stronie sklepu zapytania o zestawy są lekkie (indeksowane tabele), a zasoby ładowane wyłącznie na stronach produktów i koszyka.

Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia