Nejčastější dotazy k e-mailům
WooCommerce a většina pluginů odesílajících e-maily odesílají zprávy pomocí funkce wp_mail(), která je základní funkcí WordPressu.
Ve většině případů, pokud e-mail není odesílán/přijat, pak problém není v samotném WooCommerce, ale v základní e-mailové funkci u poskytovatele hostingu. Níže se podíváme na řešení běžných problémů.
Dostávám objednávky, ale e-maily se neodesílají!
Příčinou může být několik faktorů. Než se podíváme na problémy se samotným e-mailem, zkontrolujte následující faktory.
Zkontrolujte, zda objednávky čekají na na platbu
Pokud mají nové objednávky stav Čeká na platbu, žádný e-mail ještě zákazníkovi nemá být odeslán. Čekající objednávky jsou objednávky, kdy zákazník podal objednávku, ale opustil platební stránku (v závislosti na platební bráně, např. PayPal) nebo byla jeho platební karta odmítnuta.
Pokud máte čekající objednávky, ale obdržíte za ně platbu prostřednictvím platební brány, jako je GoPay nebo Comgate, objednávky se neaktualizovaly, což by mohlo znamenat problém s platební bránou. V tomto případě se nejedná o problém s e-mailem, nýbrž o problém s platební bránou.
Zdrojem problémů se změnou stavu mohou být také pluginy. Konflikty pluginů můžete zjistit tak, že pluginy nebo šablony zakážete, nebo můžete použít ladící log k zobrazení chyb. Pokud dojde k „fatálním chybám“ (fatal errors), může to být problém.
Zkontrolujte nastavení e-mailu
Objednávky, které se správně aktualizují na stav Zpracovává se, by měly generovat e-mail.
Dalším možným problémem je chybné zakázání odesílání e-mailů. Zkontrolujte, zda je zaškrtnuto políčko „Povolit toto e-mailové upozornění“ pro oznámení objednávek v kartě WooCommerce > Nastavení > E-maily a vyberte e-mailovou šablonu Zpracovávání objednávky. Poté e-mail otestujte nastavením typu e-mailu na prostý text.
Zkontrolujte, zda se e-maily odesílají, ale nedoručují se
Pokud jsou e-maily povoleny a objednávky se aktualizují na stav Zpracovává se, může být problém v doručování e-mailů příjemci. Může se stát, že blokátor nevyžádané pošty klasifikuje vaše e-maily jako spam a blokuje je. Pomoci může instalace pluginu pro protokolování zpráv.
Nainstalujte si plugin WP Mail Logging plugin. Ten zaznamenává všechny odchozí e-maily a vy tak získáte přehled o tom, co se odesílá. Po instalaci:
- vygenerujte zkušební objednávku,
- přejděte na nástěnku a v menu vyberte kartu WP Mail Log,
- zkontrolujte, zda testovací objednávka vygenerovala e-mail, a zda plugin hlásí chyby při odesílání.
Po úspěšném odeslání by obrazovka měla vypadat asi takto:
Pokud byl e-mail odeslán, ale nebyl doručen, můžete podniknout několik kroků:
- Ujistěte se, že je v adresním poli „Od“ na kartě WooCommerce > Nastavení > E-maily zadaná vaše e-mailová adresa s vlastní doménou. Použití e-mailové adresy @gmail.com, @yahoo.com nebo podobné veřejné domény může způsobit, že e-maily přistanou ve složkách nevyžádané pošty.
- Založte si účet u specializovaného poskytovatele SMTP, který e-mail pošle za vás. Poskytovatel SMTP je spolehlivější než odesílání pošty na vlastním serveru.
Pokud e-mail nebyl odeslán, příčinou může být konflikt pluginů, který blokuje odesílání. Konflikty pluginů můžete zjisit tak, že pluginy nebo šablony zakážete, nebo můžete použít ladící log k zobrazení chyb. Pokud dojde k „fatálním chybám“ (fatal errors), může to být problém.
Co je specializovaný poskytovatel SMTP? Je to jako účet Gmail?
Specializovaný zprostředkovatel SMTP je podobný webovému hostingu v tom, že u něj máte založený účet a používáte jeho servery. Rozdíl je v tom, že místo webových stránek používáte servery k odesílání e-mailů. Gmail je poskytovatel e-mailů, odkud posíláte a kde přijímáte e-maily; specializovaný poskytovatel SMTP je víceméně polovina Gmailu, jelikož z přes něj e-maily odesíláte, ale nepřijímáte.
Mohu Gmail používat jako svého poskytovatele SMTP?
Ano, ale není to ideální. Gmail vám zablokuje účet, pokud během 24 hodin odešlete e-maily více než 500 jedinečným příjemcům. To zahrnuje e-maily, které odesíláte sami, i e-maily, které odesílají vaše webové stránky. Více na: Podpora Google: Gmail.
Navrhovaní specializovaní poskytovatelé SMTP
Existují specializovaní poskytovatelé SMTP, kteří fungují s většinou webových stránek. Všichni mají svůj vlastní plugin na WordPress.org, lze je nainstalovat z wordpressové nástěnky a mají k dispozici podporu, která vám pomůže začít.
- Mailjet (Plugin) – posílejte až 6 000 e-mailů za měsíc zdarma.
- Sendinblue (Plugin) – posílejte až 9 000 e-mailů denně zdarma.
- Postmark (Plugin) – placený plán začíná na 10 000 e-mailech měsíčně.
- Amazon SES (Plugin) – 62 000 e-mailů za měsíc lze poslat zdarma, pokud je váš web hostován na AWS, jinak ceny začínají na 0,10 $ za každých 1 000 e-mailů.
Tým mailpoetu, který se skládá z vývojářů pluginu WP Mail Logging, napsal článek o SMTP a WordPress, který se vám může hodit.
Jak funguje e-mail?
Pokud cestu e-mailu porovnáme s jízdou v autě, e-maily z bodu A do bodu B necestují přímo. Jejich konečná zastávka je spíše bod W, přičemž e-mail přeskakuje z jednoho serveru na druhý rychlostí světla, a každý jeho skok jej zároveň filtruje.
Google sestavil znázornění cesty e-mailu. Tento je sice vytvořený pro Gmail a doručování do mobilních zařízení, ale pomáhá vysvětlit fungování e-mailu. Více na: Story of Send.
Jak na WordPressu funguje odesílání e-mailů?
WooCommerce a většina pluginů e-maily odesílají pomocí funkce wp_mail(), která je základní funkcí WordPressu.
Znamená to, že můj e-mail posílá WordPress? Nebo jej posílá WooCommerce?
Ani jedno. WooCommerce zavolá funkci wp_mail(), která pak požádá WordPress o odeslání e-mailu. Vzhledem k tomu, že WordPress není e-mailový server, obvykle žádá PHP, aby za něj e-mail poslal. PHP pak zkontroluje místní e-mailový server v rámci webového serveru a řekne mu, aby e-mail odeslal. Než se váš e-mail dostane na webový server, udělá tři kroky.
Pokud je e-mail k odeslání předán mému webovému serveru, jak do toho zapadá specializovaný poskytovatel SMTP?
Pomocí pluginu, který má poskytovatel SMTP k dispozici, nebo pluginu Post SMTP, funkce wp_mail() přesměruje e-mail z PHP na poskytovatele SMTP. Odtud poskytovatel SMTP obdrží požadavek a přidá váš e-mail do fronty k odeslání.
Pokud jsou e-maily blokovány filtry nevyžádané pošty, proč ve složce nevyžádané pošty vůbec nejsou?
Filtr nevyžádané pošty je posledním filtrem, přes který e-mail prochází, a v tomto okamžiku je označen jako spam na základě nastavení e-mailového klienta nebo toho, zda označujete podobné e-maily jako spam. Pokud jsou e-maily označeny jako spam ještě předtím, zkrátka se nedoručí.
E-maily z kontaktního formuláře fungují, tak proč jsou e-maily od WooCommerce blokovány?
Bez prozkoumání protokolů serveru a cest e-mailu na tuto otázku nelze jednoduše odpovědět.
- Krátká odpověď je, že existuje mnohem více filtrů, než je skenování typického spamu. Filtry nevyžádané pošty kontrolují IP adresu původu, odesílajícího uživatele a doménu, množství e-mailů, které IP/odesílatel odeslal, kolikrát byly e-maily od tohoto odesílatele označeny jako spam, a znění e-mailů.
- Nejběžnějším faktorem pro zařazení mezi nevyžádanou poštu je původ e-mailu, zásadní vliv může mít i obsah či formátování.