Przejdź do treści

Troubleshooting

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ź ustawienieSettings → Formularz → Pokazuj formularz automatycznie pod ceną musi być włączone.
  • Sprawdź template motywu — niektóre motywy nadpisują single-product/price.php i 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.

  1. Zainstaluj WP Mail SMTP i wyślij email testowy z konfiguracji wtyczki.
  2. 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.
  3. 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).
  4. 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 ActionsWC → Status → Scheduled Actions → filtr po grupie „wpnest_stonot”. Powinieneś zobaczyć akcje wpnest_stonot_dispatch_product i wpnest_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 w Subscriber_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.com i jan@example.com osobno, 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.com a 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

Przy zgłaszaniu dołącz: System Status report (WC → Status → Get System Report), wycinki z debug.log z timestampem problemu, oraz kroki do reprodukcji.

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.