Najczęstsze problemy i ich rozwiązania. Jeśli nie znajdziesz tu odpowiedzi, sprawdź WooCommerce → Status → Logs z prefixem wpnest-stonot- oraz Status → Scheduled Actions filtrowane po grupie wpnest_stonot.
Formularz nie pojawia się na produkcie
- Sprawdź status stocku — formularz pokazuje się tylko gdy produkt jest „Brak na stanie” (stock_status =
outofstock). Produkty „Dostępne” lub „Na zamówienie” go nie wyświetlają. - Sprawdź ustawienie — Settings → Formularz → Pokazuj formularz automatycznie pod ceną musi być włączone.
- Sprawdź template motywu — niektóre motywy nadpisują
single-product/price.phpi nie wołajądo_action('woocommerce_single_product_summary'). W takim wypadku użyj bloku Gutenberg lub shortcode’a[wpnest_stonot_form]w treści produktu. - Sprawdź conflict z innym pluginem — testowo dezaktywuj inne back-in-stock plugins (Restock Email Notifications, WC Waitlist), formularze mogą się nawzajem wykluczać.
Maile potwierdzenia / powiadomienia nie dochodzą
Problem #1 całego ekosystemu WooCommerce — deliverability hostingu. Zanim debugujesz plugin, sprawdź czy jakiekolwiek maile WC dochodzą (np. potwierdzenie zamówienia). Jeśli nie — problem jest po stronie hostingu, nie wtyczki.
- Zainstaluj WP Mail SMTP i wyślij email testowy z konfiguracji wtyczki.
- Jeśli test dochodzi, ale Stock Notifier nadal nie — sprawdź WC → Status → Logs, prefix
wpnest-stonot-. Logi pokażą czy wp_mail został wywołany i jakie zwrócił return. - Jeśli logi pokazują
wp_mail() returned false— problem jest na poziomie WP, nie pluginu. Diagnozuj z pluginem do logowania wp_mail (np. WP Mail Logging). - Jeśli logi pokazują
wp_mail() returned true, a klient nadal nie ma maila — sprawdź folder Spam, sprawdź SPF/DKIM/DMARC dla domeny From.
Powiadomienia nie wysyłają się po zmianie stocku
- Sprawdź Scheduled Actions — WC → Status → Scheduled Actions → filtr po grupie „wpnest_stonot”. Powinieneś zobaczyć akcje
wpnest_stonot_dispatch_productiwpnest_stonot_send_single. Jeśli są w statusie „failed”, kliknij action żeby zobaczyć trace. - Sprawdź debounce — jeśli zmieniłeś stock dwa razy w ciągu 5 minut, drugi flip jest ignorowany. Poczekaj 5 minut lub wyczyść transient
wpnest_stonot_disp_{product_id}_{variation_id}. - Sprawdź subscribers w statusie „active” — jeśli zero subskrybentów = zero maili. Pending subscribers nie dostają powiadomień (muszą najpierw potwierdzić double opt-in).
- Sprawdź czy Action Scheduler działa — w niektórych konfiguracjach hostingu (limit memory, brak wp-cron) AS staje. Sprawdź WC → Status → System Status → Action Scheduler.
Klient zapisany dwa razy / duplikat w tabeli
Plugin ma idempotent dedup — nie powinno się to zdarzyć. Jeśli widzisz duplikaty, sprawdź:
- UNIQUE constraint z NULL variation_id — MySQL traktuje
NULL != NULL, więc UNIQUE(product_id, variation_id, email)nie de-duplikuje simple products na poziomie DB. Dedup robi się w aplikacji przez specjalne WHERE NULL clause wSubscriber_Model::find_by_product_email. Jeśli widzisz duplikaty, prawdopodobnie używasz starszej wersji pluginu — zaktualizuj do najnowszej. - Wpisana wielką literą vs małą — plugin normalizuje email do lowercase przed dedup. Jeśli widzisz
Jan@example.comijan@example.comosobno, zgłoś bug.
Conversion tracking nie flaguje „converted”
- Sprawdź, że order ma status „completed” — plugin matchuje wyłącznie na
woocommerce_order_status_completed. Processing / on-hold / pending nie liczą. - Sprawdź billing_email order vs email subscribera — match jest case-insensitive ale literal. Jeśli klient się zapisał na
jan@example.coma zamówił przez gościa z innym mailem, conversion nie zostanie zmatchowana. - Sprawdź product_id w order items — match wymaga, by jeden z order items miał ten sam product_id (+ variation_id jeśli było). Wariant produktu w zamówieniu vs simple subscription = niezgodność, nie match.
- Brak time window — Free flaguje convert dla dowolnego prior notification. Klient zapisany 2 lata temu i zamówił dziś → też converted. Jeśli to dla Ciebie problem, czekaj na Pro (Restrictive Conversion Window 30/60/90 days).
Włącz tryb debug
Dla głębszej diagnostyki włącz WP_DEBUG i WP_DEBUG_LOG w wp-config.php:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Logi trafią do wp-content/debug.log. Plugin loguje błędy walidacji formularza, niepowodzenia wp_mail, oraz wyjątki w Action Scheduler actions.
Wciąż problem? Zgłoś support
- Forum WordPress.org — wordpress.org/support/plugin/wpnest-stock-notifier-for-woocommerce
- Email — support@wpnest.pl (preferowane dla licencjonowanych Pro klientów, gdy Pro będzie dostępne)
Przy zgłaszaniu dołącz: System Status report (WC → Status → Get System Report), wycinki z debug.log z timestampem problemu, oraz kroki do reprodukcji.