Przejdź do treści

Najczęściej zadawane pytania

Czy wtyczka wymaga zewnętrznej usługi mailingowej (Mailchimp, Klaviyo, Brevo)?

Nie. Plugin używa wbudowanego w WordPress wp_mail() — tej samej funkcji, której WooCommerce używa do maili o zamówieniach. Jeśli Twoje sklepowe maile dochodzą, dojdą i te. Dla najlepszej deliverability rekomendujemy zainstalować plugin SMTP (WP Mail SMTP, FluentSMTP) i podpiąć dedykowaną usługę transactional email (Amazon SES, Postmark, SendGrid, Mailgun). Plugin SMTP działa transparentnie — Stock Notifier nic nie wie o jego istnieniu i działa bez dodatkowej konfiguracji.

Co z RODO i zgodami marketingowymi?

Każdy zapis przechodzi double opt-in — klient musi potwierdzić mailem. W tabeli zapisujemy znacznik czasu zgody, IP (hashowane HMAC-SHA256, nie surowe) i user agent. To pełen audit trail wymagany przez GIODO. Tekst zgody jest edytowalny w ustawieniach — plugin zapisuje wersję obowiązującą w momencie opt-in, więc zmiana wordingu nie unieważnia starych zgód.

Czy działa z produktami wariantowymi?

Tak. Subskrybenci są zapisywani per (product_id, variation_id) — klient czekający na rozmiar L nie dostanie maila, gdy wróci rozmiar S. Detektor stock status nasłuchuje hooków zarówno simple (woocommerce_product_set_stock_status) jak i variation (woocommerce_variation_set_stock_status).

Co jeśli zrobię szybką sekwencję OOS → IS → OOS → IS (flap stanu)?

Plugin ma debounce 5 minut na transient cache per produkt — wielokrotne zmiany w krótkim oknie nie wysypią baterii maili. Plus per-subskrybent antispam window (domyślnie 24h): ta sama osoba nie dostaje dwóch powiadomień dla tego samego SKU. Te dwa mechanizmy są niezależne — pierwsze chroni przed flap, drugie przed namierzeniem konkretnego klienta.

Czy zobaczę, które maile przyniosły zamówienie?

Tak. Po ukończonym zamówieniu (woocommerce_order_status_completed) plugin matchuje billing_email z subskrybentami w statusie „notified” dla zamówionych produktów i flaguje ich jako „converted” z ID zamówienia. W tabeli widzisz dokładnie który mail skończył się sprzedażą, plus możesz wyeksportować CSV i policzyć konwersję per produkt / kategoria / kampania.

Czy plugin jest kompatybilny z HPOS (High-Performance Order Storage)?

Tak. Deklarujemy pełną kompatybilność z HPOS. Match konwersji używa wc_get_order() i nowych API zleceń, nie odpytuje post_meta. Tabela subskrybentów jest niezależna od orderów (relacja przez billing_email + product_id), więc HPOS nie wpływa na strukturę danych.

Czy są limity liczby subskrybentów / wysłanych maili?

Nie. Wersja Free nie ma żadnych limitów. Jedyne ograniczenie to wydajność Twojego hostingu — Action Scheduler dzieli kolejkę na batche po 50, więc nawet bardzo duże sklepy z 5000+ oczekujących radzą sobie bez problemu. Dla bardzo dużych wolumenów warto rozważyć dedykowany worker dla Action Scheduler (np. WC tools).

Co z odinstalowaniem? Czy mogę testować bez ryzyka?

Domyślnie tabela subskrybentów zostaje w bazie po dezaktywacji i odinstalowaniu — to ochrona przed przypadkową utratą danych. Pełny cleanup (DROP TABLE + delete options + clear transients) następuje wyłącznie gdy świadomie włączysz opcję „Skasuj dane przy odinstalowaniu” w ustawieniach i potem odinstalujesz wtyczkę.

Czy plugin obsługuje produkty na backorder (przyjmowanie zamówień przy braku stanu)?

We Free — nie bezpośrednio. Plugin opiera się na transitions outofstock → instock; produkty z backorders='notify' i stock_quantity=0 mają status onbackorder, który nie wchodzi w flow. Pro 1.0.0 zawiera dedykowany Backorder Tracker obsługujący transitions onbackorder → instock (priority 5 listener, reuse Free Notify_Dispatcher).

Czy mogę używać własnego template’a maila?

Tak. Skopiuj plik wp-content/plugins/wpnest-stock-notifier-for-woocommerce/includes/email/templates/restock-notification.php do your-theme/wpnest-stonot/restock-notification.php. Plugin użyje motywu zamiast bundlowanego template’a. Pro 1.0.0 zawiera WYSIWYG editor (TinyMCE) z templates per typ + język — bez dotykania PHP.

Co z WPML / Polylang i wielojęzycznością?

Tekst zgody, subject maila i intro powiadomienia są filtrowalne: wpnest_stonot_gdpr_consent_text, wpnest_stonot_email_subject (z subscriber_row jako context), wpnest_stonot_email_intro. Twój multilang plugin może per-visitor-locale swapować wartości. Plugin trzyma w tabeli jedną opcję per concept (NIE pair _en/_pl) — bo to filtry, nie storage, decydują o lokalizacji.

Czy mogę wysyłać dane subskrybentów do Zapiera / Make / Slacka / Discorda?

Tak. Wejdź w WooCommerce → Stock Notifier → Settings → Webhooks, wklej URL endpointa (np. Slack incoming webhook lub URL z Zapiera) i zaznacz interesujące Cię zdarzenia (subscribed / notified / converted). Plugin auto-wykrywa Slacka i Discord po hoście URL i formatuje payload natywnie; pozostałe URL-e dostają generyczny JSON {event, site, timestamp, data}. Wysyłka jest non-blocking — błędy webhooka nie spowalniają sklepu. Payload nie zawiera consent_ip, user agenta ani tokena (RODO-safe).

Czy mogę dodać reCAPTCHA / Cloudflare Turnstile / hCaptcha do formularza?

Tak — przez filter wpnest_stonot_pre_subscribe_validate. Domyślnie zwraca null (pass); zwróć WP_Error ze status data field żeby zablokować zapis z własnym kodem HTTP. Przykład dla Cloudflare Turnstile:

add_filter( 'wpnest_stonot_pre_subscribe_validate', function( $r, $request ) {
  $token = $request->get_param( 'cf_turnstile_token' );
  if ( ! my_turnstile_verify( $token ) ) {
    return new WP_Error( 'captcha_failed', 'Captcha failed.', [ 'status' => 400 ] );
  }
  return $r;
}, 10, 2 );

Filter strzela po honeypot+rate-limit a przed walidacją email — bot calls są obcięte zanim dotrą do Twojej weryfikacji captcha (oszczędność quoty API u dostawcy captcha).

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.