Przejdź do treści

Formularz „Powiadom mnie”

Formularz to jedyne miejsce kontaktu klienta z pluginem. Dostępne są trzy sposoby umieszczenia — domyślnie auto-render pod ceną wystarcza w 90% przypadków.

Sposób 1: Auto-render pod ceną (domyślny)

Plugin podpina się do akcji woocommerce_single_product_summary priorytet 25 (zaraz po cenie i opisie krótkim). Na każdym wyprzedanym produkcie (status outofstock) renderuje formularz. Włączone domyślnie — nic nie musisz robić.

Sposób 2: Blok Gutenberg

W edytorze produktu lub dowolnej strony dodaj blok „WPNest Stock Notifier — formularz zapisu”. Atrybuty:

  • Product ID — domyślnie current product (gdy w kontekście produktu). Można wskazać ręcznie dla landing pages.
  • Variation ID — opcjonalne, dla konkretnej wariacji.

Sposób 3: Shortcode

  • [wpnest_stonot_form]

Przykłady użycia:

// W treści produktu (auto-detect product_id)
[wpnest_stonot_form]

// Na landing page dla konkretnego produktu
[wpnest_stonot_form product_id="123"]

// Dla konkretnej wariacji
[wpnest_stonot_form product_id="123" variation_id="456"]

Co widzi klient

  • Pole email z placeholderem („Wpisz swój adres email”)
  • Przycisk zapisu („Powiadom mnie”)
  • Tekst zgody RODO pod formularzem (edytowalny w ustawieniach)
  • Komunikat sukcesu po wysłaniu („Sprawdź skrzynkę — wysłaliśmy potwierdzenie”)
  • Komunikat błędu przy nieprawidłowym mailu / rate limit / honeypot

Co dzieje się pod spodem

  1. Klient submituje formularz — JS robi fetch do REST /wp-json/wpnest-stonot/v1/subscribe z nonce
  2. Honeypot check — ukryte pole website; jeśli wypełnione (bot), plugin zwraca 200 OK ale nic nie zapisuje (silent ignore)
  3. Rate limit — max 5 zapisów / 5 minut z tego samego IP (hashowane HMAC)
  4. Walidacja — format email, product_id istnieje, status produktu = OOS
  5. Idempotent dedup — istniejący row pending = resend confirmation, active = already subscribed, unsubscribed = reset z audit trail i nowy token
  6. Insert + mail — nowy row w tabeli ze statusem pending + wysyłka maila confirmation z linkiem opt-in

Cała operacja jest idempotentna. Klient może klikać „Powiadom mnie” wielokrotnie z tym samym mailem — nie dostanie duplikatów w bazie ani niepotrzebnych maili. To samo dotyczy mailingu confirmation — token jest jednorazowy i regenerowany przy każdej próbie resend.

Customizacja wyglądu

Formularz ma własne klasy CSS w przestrzeni .wpnest-stonot-form-*. Możesz nadpisać style w motywie (np. w style.css motywu dziecka):

.wpnest-stonot-form { /* container */ }
.wpnest-stonot-form__input { /* email input */ }
.wpnest-stonot-form__button { /* submit button */ }
.wpnest-stonot-form__consent { /* RODO consent text */ }
.wpnest-stonot-form__message { /* success/error message */ }

Dla głębszej customizacji template jest overridowalny z motywu — skopiuj wp-content/plugins/wpnest-stock-notifier-for-woocommerce/templates/subscribe-form.php do your-theme/wpnest-stonot/subscribe-form.php.

Szanujemy Twoją prywatność

Ta strona używa plików cookie do analityki i marketingu. Możesz zaakceptować wszystkie, odrzucić nieobowiązkowe lub dostosować swoje preferencje.