Skip links

WordPress nie wysyła maili – jak zdiagnozować i naprawić problem

Jeśli WordPress nie wysyła maili, zwykle nie chodzi o „awarię WordPressa”, tylko o dostarczalność i konfigurację wysyłki. W praktyce problem dotyczy formularzy kontaktowych, wiadomości z WooCommerce, resetów haseł albo maili systemowych, które „znikają” po drodze. Poniżej masz konkretną ścieżkę diagnostyczną, dzięki której szybko znajdziesz przyczynę i wdrożysz poprawkę.

WordPress nie wysyła maili – jak zdiagnozować i naprawić problem. Jak rozpoznać problem i zawęzić diagnozę

Najpierw ustal, czy mail:

  1. w ogóle nie jest wysyłany (WordPress go nie generuje), czy
  2. jest wysyłany, ale nie dochodzi (wpada do spamu, jest odrzucany przez serwer odbiorcy, albo blokuje go hosting).

Najprostszy test: wywołaj mail systemowy (np. reset hasła) oraz wyślij wiadomość z formularza. Jeśli reset hasła dochodzi, a formularz nie, problem leży po stronie konfiguracji formularza lub wtyczki (temat szerzej omawiamy też w poradniku: https://fastgrow.pl/niedzialajacy-formularz-kontaktowy/). Jeśli nie dochodzi nic, diagnozę kieruj w stronę serwera, SMTP i rekordów DNS.

Najczęstsze przyczyny: hosting, DNS i „From”

Wysyłka z WordPressa często opiera się na funkcji mail() po stronie serwera. To działa „czasem”, jednak dziś wiele serwerów pocztowych traktuje takie wiadomości jako podejrzane. W efekcie mail może zostać odrzucony albo trafić do spamu.

Najczęstsze winne obszary:

  • adres nadawcy „From” ustawiony na nieistniejący lub obcy (np. gmail), przez co serwery odrzucają wiadomość,
  • brak lub błędy w rekordach SPF/DKIM/DMARC w DNS domeny,
  • blokada wysyłki na hostingu (limity, wyłączone mail(), zła konfiguracja PHP),
  • konflikt wtyczek od SMTP albo newsletterów, które przechwytują wysyłkę,
  • błędy w formularzu (zły adres odbiorcy, brak konfiguracji pól, CAPTCHA blokuje wysyłkę).

WordPress nie wysyła maili: szybka naprawa i pełna checklista wdrożenia

Poniżej masz kolejność działań, która w praktyce „zamyka” temat w większości projektów. Rób je po kolei, bo dzięki temu nie naprawiasz objawów, tylko przyczynę.

Zacznij od sprawdzenia, gdzie trafiają wiadomości. Najpierw zajrzyj do folderów Spam/Oferty/Inne po stronie odbiorcy. Następnie wyślij test na dwa adresy w różnych usługach (np. Gmail i firmowy). Dzięki temu szybciej zobaczysz, czy problem dotyczy konkretnej skrzynki, czy całej wysyłki.

Ustal poprawny adres nadawcy. W praktyce najlepiej działa nadawca w tej samej domenie co strona, np. noreply@twojadomena.pl albo kontakt@twojadomena.pl. Unikaj ustawiania „From” jako Gmail lub Outlook, ponieważ część serwerów uzna to za podszywanie. Jeśli na stronie masz kilka formularzy i kilka wtyczek, ujednolić „From” jest kluczowe, bo inaczej część maili będzie wyglądać wiarygodnie, a część będzie odrzucana.

Wdróż wysyłkę przez SMTP zamiast mail(). To najpewniejsza zmiana, gdy WordPress nie wysyła maili albo robi to losowo. SMTP daje autoryzację i przewidywalność, a dodatkowo pozwala logować błędy. Zazwyczaj masz trzy sensowne opcje:

  • SMTP od hostingu (najszybciej wdrażalne),
  • skrzynka firmowa w domenie (stabilnie i profesjonalnie),
  • zewnętrzny provider transakcyjny (gdy wysyłasz dużo maili i zależy Ci na dostarczalności).

Dopiero po ustawieniu SMTP wykonaj test wysyłki. Wtyczki SMTP zwykle mają przycisk „Send test email”. Jeśli test przechodzi, a formularz nadal nie wysyła, wracasz do ustawień formularza, a nie do serwera.

Sprawdź rekordy DNS: SPF i DKIM. To jest moment, w którym większość maili zaczyna „dochodzić” zamiast „znikać”. SPF mówi, jakie serwery mogą wysyłać w imieniu domeny, a DKIM podpisuje wiadomości. Gdy wdrażasz SMTP, provider zwykle podaje gotowe rekordy do wklejenia w DNS. Warto też rozważyć DMARC, bo dzięki temu łatwiej kontrolujesz reputację domeny i szybciej diagnozujesz odrzucenia.

Zadbaj o zgodność „From” i „Return-Path”. W praktyce chodzi o to, aby domena nadawcy była spójna z domeną wysyłki. Jeśli wtyczka pozwala, ustaw też „Force From Email”. Dzięki temu formularze, WooCommerce i powiadomienia systemowe nie „rozjadą się” w konfiguracji.

Włącz logowanie wysyłki. Gdy problem wraca cyklicznie, logi są różnicą między zgadywaniem a diagnozą. Dobrze, jeśli widzisz: czas wysyłki, odbiorcę, temat oraz błąd zwrócony przez SMTP. Dzięki temu od razu wiesz, czy to błąd uwierzytelniania, limit hostingu, czy odrzucenie po stronie odbiorcy.

Zweryfikuj ustawienia formularza. Jeśli formularz kontaktowy nie wysyła wiadomości na Gmail, często winne są:

  • literówki w adresie odbiorcy,
  • brak mapowania pola „Email” jako reply-to,
  • błędna konfiguracja SMTP „From” vs „Reply-To”,
  • CAPTCHA, która blokuje wysyłkę lub nie zapisuje zgłoszeń.

Jeśli używasz WooCommerce, sprawdź też, czy maile są włączone w statusach zamówień oraz czy szablony maili nie zostały uszkodzone przez motyw. Co ważne, problem może dotyczyć tylko jednego typu maila, np. „nowe zamówienie” działa, a „zmiana statusu” już nie. To zwykle oznacza konflikt w szablonie, tłumaczeniach albo filtrach z wtyczek.

Zwróć uwagę na zmiany po migracji. Gdy WordPress nie wysyła maili po migracji na nowy hosting, często okazuje się, że poprzedni hosting miał aktywną wysyłkę mail(), a nowy ją ogranicza. Zdarza się też, że DNS wskazuje poprawnie stronę, ale poczta nadal działa na starych rekordach albo nie ma zaktualizowanego SPF. W takiej sytuacji najpierw porządkujesz DNS, a dopiero potem testujesz wtyczki.

Porównaj to z SaaS-em i wyciągnij wnioski. Na platformach SaaS zwykle jesteś skazany na ich system wysyłki i ich ograniczenia. Natomiast w WordPressie możesz przejść na SMTP, podpiąć własny provider, dodać logowanie i realnie kontrolować dostarczalność. Dzięki temu ten problem da się rozwiązać trwale, a nie „na próbę”.

Jeśli wolisz podejść do tematu procesowo, połącz naprawę maili z bieżącym utrzymaniem strony, bo wtedy szybciej wyłapujesz regresje po aktualizacjach: https://fastgrow.pl/opieka-nad-strona/. Natomiast jeśli problem jest jednym z wielu objawów (np. po przebudowie lub po zmianach w formularzach), warto uporządkować całą konfigurację strony i jej integracje: https://fastgrow.pl/tworzenie-stron-www/. Dodatkowo, gdy temat maili łączy się z automatyzacjami marketingowymi (np. potwierdzenia, follow-upy, sekwencje), pomocne będzie też spojrzenie na automatyzacje w WordPressie: https://fastgrow.pl/automatyzacja-wordpress/.

Na koniec zostawiam jedno oficjalne źródło, które dobrze porządkuje temat mechaniki wysyłki w WordPressie: https://wordpress.org/support/article/wp_mail/

https://fastgrow.pl/tworzenie-stron-wordpress/ oraz https://fastgrow.pl/kontakt/

Zobacz
Przeciągnij