Merytorycznie
Dlaczego formularz strona może nie wysyłać maili, mimo że sama strona działa?
Strona może próbować wysyłać wiadomości na kilka sposobów. Część stron korzysta z domyślnej funkcji PHP mail(), część z wtyczki SMTP, a część z integracji z zewnętrzną pocztą. Problem zaczyna się wtedy, gdy serwer nie pozwala na wysyłkę, adres nadawcy nie pasuje do domeny, wtyczka formularza ma błędne nagłówki albo rekordy DNS nie potwierdzają, że dana domena ma prawo wysyłać takie wiadomości.
Dlatego samo zainstalowanie wtyczki SMTP nie zawsze rozwiązuje sprawę. Jeśli skrzynka jest źle skonfigurowana, port jest zablokowany, hasło aplikacji jest niewłaściwe, a domena nie ma poprawnych rekordów SPF, DKIM i DMARC, wiadomości nadal mogą nie dochodzić albo trafiać do spamu. W praktyce trzeba sprawdzić cały łańcuch: formularz, stronę, serwer, domenę, pocztę nadawcy i skrzynkę odbiorcy.
Ważny jest też adres nadawcy. Formularz często zbiera e-mail klienta i właściciel strony chce, żeby wiadomość przychodziła „od klienta”. Technicznie może to wyglądać podejrzanie dla filtrów antyspamowych, bo strona próbuje wysłać wiadomość jako cudza domena. Lepszym rozwiązaniem jest wysyłka z własnej domeny, a adres klienta ustawiony jako Reply-To.
Jeżeli problem pojawił się po zmianie hostingu, zobacz też przeniesienie strona na inny hosting. Jeśli niedziałają wiadomości zamówień w sklepie, właściwsza może być też podstrona sklepu / WooCommerce płatności nie działają albo naprawa sklepu / WooCommerce.