Formularz kontaktowy na stronie WWW nie wysyła wiadomości

Szybki hosting dla WordPressa

 

Ustawienia zabezpieczeń antyspamowych na serwerach w home.pl, mogą być przyczyną sytuacji, w których formularze kontaktowe na stronach WWW przestały wysyłać wiadomości e-mail. Bezpośrednią przyczyną takiego stanu rzeczy jest wymagany adres e-mail nadawcy zawarty w nagłówku wiadomości e-mail, który musi istnieć w ramach konta (serwera), do którego nastąpiła autoryzacja.

Skrypt formularza, który samodzielnie przygotowałem nie wysyła wiadomości

W przypadku własnych skryptów służących do wysyłania wiadomości e-mail za pomocą funkcji mail(), może być wymagana edycja skryptów w taki sposób, aby poprawny adres e-mail nadawcy znajdował się w nagłówku wysyłanej wiadomości. Przykładowo, może być to modyfikacja, która dodawałaby linię zawierającą poprawny nagłówek: „from: adres@domena.pl”, np.:

-f adres@domena.pl

Przykład: mail($to, $subject, $message, $headers, “-f adres@domena.pl”);
Piąty parametr funkcji mail() dodaje wpisane parametry do funkcji wysyłającej, a -f definiuje pole „from” w nagłówku.

Bardzo ważne jest, aby zadeklarowana skrzynka e-mail z takim adresem (np. adres@domena.pl), była dostępna na serwerze, z którego realizowana jest wysyłka (czyli, na którym wykonywany jest skrypt formularza).

Skrypt formularza w CMS np. WordPress – Contact form lub wp-mail()

W przypadku formularzy kontaktowych dostępnych w gotowych rozwiązaniach (np. WordPress – wtyczka Contact form), wystarczającym rozwiązaniem może okazać się wpisanie w polu “Od:” adresu e-mail dla skrzynki utworzonej na serwerze, z którego następuje wysyłka z formularza kontaktowego. Natomiast w polu “Dodatkowe nagłówki:” należy wpisać: Reply-to: [your-email].

Przykład: jeśli formularz kontaktowy znajduje się na serwerze: “serwer123456.home.pl”, upewnij się, czy zadeklarowana skrzynka e-mail w polu “Od:” jest utworzona na tym właśnie serwerze.

Przykład konfiguracji formularza Contact form w WordPressRys. Przykład konfiguracji formularza Contact form w WordPress.

Jeśli nasza wtyczka w systemie WordPress korzysta z funkcji wp-mail() i nie dostarcza prawidłowo wiadomości, może być prawdopodobne, że nie posiadamy odpowiednio zdefiniowanego pola from. Adres nadawcy wiadomości możemy w łatwy sposób dodać do funkcji wp-mail(), dzięki czemu pole from będzie poprawnie określone.

Więcej informacji na temat potencjalnych rozwiązań w podobnych sytuacjach możesz znaleźć na forum.home.pl:

Jak skonfigurować inne wtyczki w WordPress, aby wysyłały wiadomości?

Jeśli Twoja strona WWW zbudowana jest na podstawie CMS WordPress, możesz skorzystać też z innych pluginów (wtyczek), które umożliwiają wysyłkę wiadomości e-mail z poziomu WordPress (z wykorzystaniem SMTP).

W tym celu możesz zainstalować plugin: Easy WP SMTP lub WP Mail SMTP i następnie odpowiednio skonfigurować ustawienia SMTP.

  • Plugin WP Mail SMTP zmienia konfigurację wysyłki wiadomości e-mail za pośrednictwem funkcji wp_mail(), aby przy próbie wysyłki stosowany był SMTP zamiast funkcji mail(). W panelu administracyjnym WordPress możesz zarządzać ustawieniami SMTP.
  • Plugin Easy WP SMTP pozwala skonfigurować i wysyłać wszystkie wychodzące wiadomości e-mail z systemu WordPress za pośrednictwem preferowanego serwera SMTP.

Jeśli chcesz wysyłać wiadomości e-mail pochodzące z formularza za pomocą skrzynki e-mail utworzonej na serwerze w home.pl, to adres serwera pocztowego (SMTP host) znajdziesz po zalogowaniu do Panelu klienta home.pl. Kliknij tutaj, aby dowiedzieć się jak sprawdzić adres serwerów pocztowych w Panelu klienta home.pl.

Mam stronę w Joomla! i formularz nie wysyła do mnie wiadomości

Jeśli Twoja strona WWW została oparta o oprogramowanie Joomla!, sugerujemy skorzystanie z modułów lub komponentów, służących do dodawania formularzy kontaktowych, które umożliwiają wysyłkę wiadomości poprzez SMTP. Dodatkowo sugerujemy zmianę ustawień wysyłki wiadomości e-mail w konfiguracji Joomla! na “SMTP Server”. Aby zmienić te ustawienia wykonaj poniższe kroki:

  1. Zaloguj się do panelu administracyjnego Joomla!.
  2. Przejdź do opcji menu: System -> Konfiguracja globalna.
  3. W górnej części ekranu wybierz zakładkę: Serwer i znajdź sekcję: Poczta.
  4. W wyświetlonym formularzu zmień ustawienia wysyłania poczty:
  • Obsługa poczty – wybierz opcję SMTP,
  • Wysyłaj z adresu – wpisz adres skrzynki e-mail, za pośrednictwem której będą wysyłane wiadomości e-mail z formularza kontaktowego,
  • Nazwa nadawcy – wpisz tekst wyświetlany w polu “Od:”. Możesz wpisać adres e-mail lub inną nazwę,
  • Uwierzytelnianie SMTP – zaznacz na “TAK”,
  • Bezpieczeństwo SMTP – ustaw na “BRAK”,
  • Port SMTP – wpisz numer 587,
  • Użytkownik SMTP – wpisz nazwę użytkownika dla skrzynki e-mail (najczęściej pełny adres e-mail),
  • Hasło SMTP – wpisz hasło dostępu do skrzynki e-mail,
  • Serwer SMTP – wpisz adres serwera pocztowego, adres serwera pocztowego znajdziesz w Panelu klienta. Kliknij tutaj, aby dowiedzieć się jak znaleźć nazwę serwera pocztowego.
Jeśli chcesz wysyłać wiadomości e-mail pochodzące z formularza za pomocą skrzynki e-mail utworzonej na serwerze w home.pl, to adres serwera pocztowego (Serwer SMTP) znajdziesz po zalogowaniu do Panelu klienta home.pl. Kliknij tutaj, aby dowiedzieć się jak sprawdzić adres serwerów pocztowych w Panelu klienta home.pl.

Skrypt formularza kontaktowego w Kreatorze WWW

W przypadku formularza kontaktowego dostępnego w Kreatorze WWW, wiadomości e-mail z formularza są wysyłane poprawnie i nie musisz definiować z jakiego adresu będą wysyłane wiadomości. W ustawieniach formularza kontaktowego należy określić tylko adres e-mail, na który mają być wysyłane wiadomości z formularza.

Inne skrypty formularzy kontaktowych

W przypadku innych skryptów służących do wysyłania wiadomości e-mail, sprawdź następujące informacje:

  • jeśli skrypt korzysta z funkcji mail(), sprawdź czy w funkcji podane są parametry definiujące pole “FROM” w nagłówku wiadomości. W polu “FROM” powinien być podany adres e-mail znajdujący się na serwerze, do którego nastąpiła autoryzacja.
  • jeśli skrypt korzysta z SMTP przy wysyłaniu wiadomości, sprawdź czy w polu “FROM” podany jest adres e-mail znajdujący się na serwerze, do którego nastąpiła autoryzacja.
  • pamiętaj, że adres podany w polu “FROM” musi być adresem dla skrzynki e-mail, utworzonej na serwerze, na którym znajduje się skrypt formularza kontaktowego.
  • Czy artykuł był pomocny ?
  • Tak   Nie