Klient wypełnia formularz na stronie WordPress, widzi komunikat „Wiadomość wysłana”, ale w firmowej skrzynce nic się nie pojawia. To może oznaczać utratę ważnego zapytania, dlatego problem warto diagnozować jak awarię procesu biznesowego, a nie tylko kosmetyczny błąd strony.
Najważniejsze rozróżnienie brzmi: przyjęcie zgłoszenia przez formularz, przekazanie wiadomości do systemu pocztowego i dostarczenie jej do odbiorcy to trzy osobne etapy. Sukces pierwszego nie dowodzi sukcesu pozostałych. Dokumentacja funkcji wp_mail() w WordPressie potwierdza, że pozytywny wynik wywołania nie oznacza automatycznie dostarczenia e-maila do skrzynki.
Najpierw wykonaj prosty test kontrolowany
Wyślij jedno testowe zgłoszenie, podając charakterystyczny temat, np. „Test formularza 22-10”, i adres e-mail, który kontrolujesz. Zapisz godzinę, adres URL formularza oraz dokładny komunikat po wysłaniu. Nie umieszczaj w testowej wiadomości danych klientów. Sprawdź folder Odebrane, Spam i inne filtry skrzynki.
12 kroków diagnozy formularza kontaktowego WordPress
- Zweryfikuj komunikat. Czy strona potwierdza sukces, czy pokazuje błąd połączenia? Zapisz jego treść.
- Sprawdź odbiorcę. W ustawieniach formularza upewnij się, że wiadomości trafiają na aktualny, poprawny adres.
- Przetestuj drugi adres. W bezpiecznym teście sprawdź skrzynkę u innego operatora, aby wykluczyć filtr lokalny.
- Sprawdź walidację pól. Zbyt agresywne blokady antyspamowe mogą odrzucać poprawne zapytania.
- Sprawdź nadawcę „From”. Najlepiej, by był zgodny z domeną skonfigurowaną do wysyłki. Adres klienta może zostać użyty jako Reply-To.
- Oceń metodę wysyłki. Ustal, czy WordPress korzysta z lokalnej funkcji pocztowej, czy z prawidłowo skonfigurowanego transportu SMTP lub API operatora poczty.
- Sprawdź SPF. Zweryfikuj, czy rekord DNS autoryzuje serwery rzeczywiście wysyłające wiadomości dla domeny.
- Sprawdź DKIM. Zweryfikuj podpisywanie wiadomości zgodnie z ustawieniami dostawcy poczty.
- Sprawdź DMARC. Porównaj politykę domeny z prawidłowością SPF i DKIM oraz zgodnością domen. Nie zmieniaj rygorystycznie polityki bez oceny ruchu.
- Przejrzyj logi. Jeżeli narzędzie pocztowe lub hosting udostępnia dziennik wysyłek, sprawdź kod błędu i odpowiedź serwera.
- Sprawdź integracje. Gdy formularz wysyła dane także do CRM lub webhooka, ustal, czy awaria zewnętrznego systemu nie blokuje zgłoszenia.
- Powtórz test mobilny. Sprawdź formularz na telefonie oraz po odświeżeniu strony i w trybie niezalogowanym.
Jak rozpoznać, na którym etapie ginie wiadomość?
| Objaw | Co sprawdzić | Możliwe działanie |
|---|---|---|
| Formularz pokazuje błąd | Walidacja, CAPTCHA, żądanie sieciowe | Popraw obsługę pól i komunikatów |
| Formularz pokazuje sukces, brak wysyłki w logach | Integracja formularza i mechanizm wiadomości | Sprawdź wywołanie powiadomienia |
| Serwer przyjął e-mail, ale go nie widać | SPF, DKIM, DMARC, filtr spamu, blokady odbiorcy | Przeanalizuj dostarczalność |
| Wiadomości docierają z opóźnieniem | Kolejki, limity, dostawca poczty | Monitoruj czas i błędy wysyłki |
Nie ukrywaj problemu pod fałszywym „wysłano”
Formularz nie powinien zapewniać o otrzymaniu zgłoszenia, jeśli potwierdza jedynie przyjęcie żądania. W bardziej rozbudowanych wdrożeniach można zapisywać stan zgłoszenia po stronie systemu i osobno monitorować powiadomienia, ale wymaga to przemyślanego okresu retencji, ochrony danych i zabezpieczeń. Dla małej strony wystarczające może być rozwiązanie sprawdzające logi, poprawnie ustawiony e-mail nadawcy i okresowe testy kontrolne.
Co zrobić, jeśli firma nie może sobie pozwolić na utratę zapytań?
Zaplanować proces awaryjny: drugi kanał kontaktu, monitorowanie błędów i jasną informację dla klienta. Zobacz jak uporządkować przekazywanie zapytań od formularza do e-maila i CRM. Jeśli chcesz sprawdzić całą witrynę, skorzystaj z listy kontrolnej audytu strony firmowej. Dział opieki WordPress AIOMIX opisuje zakres utrzymania i kontroli działania.
Najczęstsze pytania
Czy instalacja SMTP zawsze rozwiązuje problem?
Nie. SMTP może poprawić sposób przekazywania wiadomości, ale błędny odbiorca, filtr spamu, formularz lub rekordy DNS nadal mogą powodować awarię.
Czy pozytywny wynik wp_mail() gwarantuje dostarczenie e-maila?
Nie. Oznacza, że metoda obsłużyła żądanie bez wykrytego błędu na tym etapie, nie że odbiorca odebrał wiadomość.
Jak często testować formularz?
Po aktualizacji formularza, zmianie dostawcy poczty, DNS, wtyczek antyspamowych oraz okresowo, gdy formularz jest kluczowym źródłem zapytań.
