Kontaktní formulář může potvrdit úspěšné odeslání, ale zpráva přesto nemusí dorazit. Důvodem bývá nevhodný způsob odesílání, chybné SMTP údaje nebo špatně nastavená adresa odesílatele.

V tomto návodu porovnáme PHP Mail a SMTP, nastavíme Joomla!, RSForm! Pro i Shack Forms a bezpečně vypneme výchozí kontaktní formulář Joomla!, pokud používáme externí řešení.

PHP Mailjednoduché, hůře kontrolovatelné
SMTPdoporučené pro produkční web
FormulářeFrom z vlastní domény, návštěvník v Reply-To

Globální nastavení e-mailu v Joomla!

Centrální nastavení najdete v Systém → Globální nastavení → Server → Nastavení e-mailu. Používají je systémové zprávy, obnova hesla i většina formulářových rozšíření.

  • Odesílat e-mail: musí být zapnuto.
  • E-mail odesílatele: použijte adresu vlastní domény, například Tato e-mailová adresa je chráněna před spamboty. Pro její zobrazení musíte mít povolen Javascript..
  • Jméno odesílatele: název firmy nebo webu.
  • Mailer: PHP Mail, Sendmail nebo SMTP.
  • Testovací e-mail: ověří základní spojení.
Nastavení PHP Mail v globálním nastavení Joomla
Nastavení odesílání přes PHP Mail v Joomla! – jednoduchá varianta bez přihlašovacích údajů SMTP.
Nastavení Sendmail v globálním nastavení Joomla
Varianta Sendmail vyžaduje správnou cestu k programu na serveru; dostupnost ověřte u hostingu.

PHP Mail vs. SMTP

PHP Mail

  • nevyžaduje SMTP účet ani heslo,
  • na správně nastaveném hostingu se rychle zprovozní,
  • má však omezenou diagnostiku,
  • hosting jej může blokovat nebo omezovat,
  • doručitelnost závisí na konfiguraci serveru.

SMTP

  • odesílá přes ověřený účet nebo transakční službu,
  • nabízí lepší logování a diagnostiku,
  • obvykle zvyšuje spolehlivost doručení,
  • vyžaduje správný port, šifrování a heslo,
  • může mít hodinové nebo denní limity.

Jak nastavit SMTP krok za krokem

Nastavení SMTP v globálním nastavení Joomla
Při volbě SMTP se zobrazí pole pro hostitele, port, zabezpečení a ověření.

Získejte údaje poskytovatele

Potřebujete SMTP host, port, šifrování, uživatelské jméno a heslo. Port 465 obvykle používá implicitní TLS, port 587 STARTTLS; vždy respektujte dokumentaci služby.

Nastavte odesílatele

From adresa musí být schránka nebo identita povolená SMTP službou. Jméno odesílatele nastavte srozumitelně.

Vyberte SMTP

Zapněte ověřování, doplňte server, port a odpovídající šifrování. Heslo nikdy nevkládejte do veřejného obsahu.

Odešlete test

Po uložení odešlete testovací e-mail, zkontrolujte spam a ověřte SPF, DKIM a DMARC domény.

Nastavení e-mailů v RSForm! Pro

RSForm! Pro používá Joomla Mailer, proto musí nejdříve projít systémový test. U konkrétního formuláře zkontrolujte Admin Emails a případně User Emails.

  • To: skutečná adresa příjemce.
  • From: {global:mailfrom}, případně pole ponechané prázdné pro zdědění konfigurace.
  • From Name: {global:fromname}.
  • Reply-To: zástupný symbol pole návštěvníka, například {email:value}.
  • Subject a Message: vyplňte ve všech aktivních jazycích.

RSJoomla doporučuje vlastní doménovou adresu v From a adresu návštěvníka v Reply-To. Při potížích dočasně zapněte e-mailové logování v konfiguraci RSForm! Pro.

Nastavení e-mailů v Shack Forms

Shack Forms také používá Joomla Mailer. V modulu formuláře otevřete kartu Email, nastavte Email To, předmět a šablonu zprávy. Výchozí příjemce může vycházet z globální adresy správce.

  • ověřte, že e-mailové pole má typ Email a validaci,
  • zkontrolujte adresu příjemce i automatickou odpověď,
  • odešlete test přes formulář a zkontrolujte uložené zprávy,
  • pokud formulář neposílá, nejprve znovu otestujte Joomla Mailer.

Jak vypnout výchozí kontaktní formulář Joomla!

Komponenta Kontakty může zobrazovat formulář přes položku nabídky i přímo na stránce zveřejněného kontaktu. Pokud používáte RSForm! Pro nebo Shack Forms, ponechaný výchozí formulář představuje další cestu pro spam.

Skryjte formulář

V Komponenty → Kontakty → Možnosti nastavte zobrazení kontaktního formuláře na Skrýt. Zkontrolujte také jednotlivé kontakty, protože lokální nastavení může globální volbu přepsat.

Odpublikujte položky nabídky

Odstraňte položky typu Jednotlivý kontakt nebo Seznam kontaktů a nahraďte je odkazem na používaný externí formulář.

Odpublikujte kontakty

Pokud komponentu nepoužíváte, odpublikujte záznamy kontaktů nebo změňte jejich přístup. Pouhé odstranění odkazu z menu neblokuje přímou URL.

Vypněte související plugin

Deaktivujte User – Contact Creator, pokud nechcete automaticky vytvářet kontakt při založení uživatele.

Jak odesílání otestovat

  • odeslat test z Globálního nastavení Joomla!,
  • otestovat každý formulář samostatně,
  • použít příjemce na jiné doméně a zkontrolovat spam,
  • ověřit From, Reply-To, SPF, DKIM a DMARC,
  • zkontrolovat logy Joomla!, RSForm! Pro a SMTP služby,
  • otestovat notifikaci správci i automatickou odpověď.

Zdroje