Miért fontos az helyes email küldés beállítása?
Mind egy céges honlap, mind webáruház esetén fontos, hogy az ügyfelek által küldött üzenetek a tulajdonosnak, illetve a webshop értesítései megérkezzenek a bolt kezelőjének és vásárlónak egyaránt. Nagyon sok esetben nincs megfelelően beállítva a levelezés, aminek az eredménye az, hogy sokszor vagy a spam-be kerül az email, vagy akár visszadobja a címzett levelezőszervere. Gondoljunk bele, ha a regisztráció megerősítő, jelszócsere kérő vagy a rendelés tájékoztató, állapotváltozást jelző email-ek nem érkeznek meg, akkor minket mennyire zavarna. A látogatóinkat, vásárlóinkat is annyira fogja, szóval érdemes komolyan venni és megfelelően beállítani a WordPress email, levélküldés módját.
Különösen ajánlott a levelezés pontos beállítása, mivel így csökkenthetőek az email-es csalások is és javulhat a felhasználói élmény, a konverzióval együtt.
Mi az a php_mail()?
A php_mail() avagy másként mail() funkció már a PHP nyelv korai verzióiban is szerepelt. Lényege annyi, hogy a PHP környezet képes legyen elektronikus levél, e-mail küldésére. Egy elég kezdetleges forma, ma már egyáltalán nem ajánlott a használata, sok hostingon alapértelmezetten kikapcsolt, tiltott.
Mi a gond vele, miért veszélyes?
A php_mail() esetében nincs azonosítás, bármely php alkalmazás, kód képes kiküldeni elektronikus leveleket. Akár támadó fél is így spammelhet a mi szerverünkről, tárhelyünkről!
Amennyiben a php_mail() engedélyezve van és olyan jellegű támadás éri a honlapunkat, hogy a támadók feltudnak PHP fájlt tölteni vagy saját kódjukat lefuttatni a támadók, úgy elkezdhetnek kéretlen reklámüzeneteket, spam-eket küldeni. Ez azért veszélyes, mert egyfelől a domain nevünk, ip címünk felkerülhet a nemzetközi spam szűrő listákra. Ha ez megtörténik, akkor könnyen előfordulhat, hogy a saját küldött leveleink a célszemély spam mappájába köt ki és így minimális az esélye, hogy megkapja, elolvassa.
Ezeken felül sok levelezőrendszer figyeli milyen módon, milyen azonosítással kerülnek kiküldésre az e-mailek és amiket php_mail() függvénnyel küldenek ki, azokat automatikusan spam kategóriába teszi és nem jut el a címzetthez.
Ha árajánlatunk, értesítőnk, hírlevelünk vagy fontos üzenetünk nem jut el a potenciális ügyfelünkhöz, akkor eleve vesztettünk, bármilyen jó is termékünk, szolgáltatásunk.
Mi a php_mail() előnye?
Az egyetlen előnye az, hogy nincs szükség a honlapunkon semmi beállítására, módosítására. A php_mail()-t szinte minden PHP alapú CMS (így a WordPress is) tudja alapként használni. Igaz, inkább azt mondanám, hogy opcionális jelleggel, amúgy már elhagyták volna legszívesebben.
Mi az a SMTP email küldés?
Az SMTP (avagy angol nevén nevezve Simple Mail Transfer Protocol) tömören azt jelenti, hogy meghatározott, (immáron biztonságos csatornán) egy levelezőszerverhez csatlakozunk és azzal küldjük ki az e-mail üzenetet azonosítást követően.
Miért jobb az SMTP?
Az SMTP-nél minden (normális tárhelyszolgáltató) esetében van lehetőség SSL/TLS titkostás használatára, továbbá van hitelesítés, tehát név és jelszó segítségével kerül azonosításra a kiküldő, hogy ki (vagy mi) akarja kiküldeni. A hitelesítéshez szükséges adatokkal pedig korlátozhatjuk, hogy idegen kód (támadás esetén) ne tudjon leveleket kiküldeni, spammelni.
Röviden összefoglalva:
- Sokkal biztonságosabb, köszönhetően a többféle azonosítási lehetőségnek. (Főleg ha a megfelelő SSL/TLS verzió és port van beállítva.)
- Használhatunk külsős e-mail küldő szolgáltatást, szervert. Így az olcsóbb tárhelyeken érvényben lévő napi kiküldhető e-mail korlátozások elkerülhetőek.
- SPAM biztosabb, kisebb eséllyel kerül a kiküldött e-mail a spam mappába.
- Stabilabb, megbízhatóbb a kiküldés, jobb a megnyitási arány.
- Tárhelyszolgáltatók is jobban preferálják, sok helyen már csak ez érhető el, a PHP_Mail() már nem.
SMTP hátrányai
Egyetlen egy hátrányt tudok csak mondani. Az pedig az, hogy be kell állítani. Ez azonban elég egyszerű, ahogy a folytatásban megismerhetjük. A beállításhoz szükséges adatokat a tárhelyszolgáltatónk felületéről tudjuk majd kiolvasni vagy tőlük kérdezhetjük meg.
WordPress honlap SMTP e-mail küldés
Ahogy fentebb megismerhettük, jobb ha WordPress weboldalunk SMTP-n keresztül küldi az e-mail üzeneteket. Például WooCommerce webáruház esetén a rendelés visszaigazolást, a kapcsolat űrlap üzenetét magunknak, ha pedig mérsékelten hírlevelezünk, akkor azt, csak néhány fontosabbat említve.
SMTP levélküldéshez szükséges adatok
- SMTP szerver/host címe: Ez lehet localhost, mail.domaincimed.hu, smtp.domaincimed.hu, smtp.tarhelyszolgaltocime.hu, hogy a gyakoribbakat mondjam, persze lehet ez simán IP cím is csak.
- Auth / autentikáció: Ez az a beállítás, hogy van-e a szerverre belépési adat, ez mindig legyen igen vagy bepipálva.
- Port száma: Ez szükséges, a megfelelő titkosításhoz (SSL/TLS, mindkettő eltérő porton van általában).
- Felhasználónév: Általában ez maga az email cím, aminek a fiókjával küldjük.
- Jelszó: Az emailfiókhoz tartozó jelszó.
WordPress honlap SMTP e-mail küldés
Ahogy fentebb megismerhettük, jobb ha WordPress weboldalunk SMTP-n keresztül küldi az e-mail üzeneteket. Például WooCommerce webáruház esetén a rendelés visszaigazolást, a kapcsolat űrlap üzenetét magunknak, ha pedig mérsékelten hírlevelezünk, akkor azt, csak néhány fontosabbat említve.
SMTP beállítása saját kóddal
Az alábbi kódot tegyük a sablonunk functions.php fájljának a végére, természetesen a megfelelő hozzáférési adatok megadásával. Reméljük Ottó nem bánja, hogy kölcsönvesszük! Akik számára a kódok beillesztése nem opció vagy a kódban lévő adatok megadása nem jár sikerrel, azok számára a folyatásban WordPress bővítményeket is írok, amikkel még egyszerűbb lesz.
SMTP beállítása bővítménnyel
Természetesen WordPress-ről lévén szó, így van több bővítmény is, amikkel beállíthatjuk az SMTP-s e-mail küldést. Azonban továbbra is személy szerint az előző, kód megoldást szívesebben ajánlom.
A bővítmények segítségével könnyen megadhatunk plusz adatokat is. (Kóddal is, csak némi utánajárást igényel aki szeretné.) Ilyen adat például, hogy milyen név jelenjen meg a levelezőkliensekben mint küldő neve (általában From name mező), mi legyen a válasz cím (from Email általában, ha levelezőben rányom a „Válasz küldése” gombra, akkor az mehet eltérő címre is akár).
A domain, DNS rekordok beállítása
A fenti beállítások (vagy is az SMTP-s küldés) segít, hogy elektronikus levelünk elinduljon és el legyen küldve. A domain DNS rekordjainak megfelelő beállítása pedig azt segíti elő, hogy a kiküldött e-mail meg is érkezzen és ne kerüljön spam kategóriába. A lenti két domain rekord azt a célt szolgálja, hogy a fogadó fél, könnyebben azonosítsa, hogy valóban a feladó küldte az e-mailt és nem más, így elég fontos és alap, hogy megfelelően be legyenek állítva.
Ehhez az alábbi DNS rekordokat kell beállítani:
- DKIM
- SPF
- DMARC
Tanácsok SPAM-be kerülés ellen
Néhány rövid és egyszerű tanácsot szeretnék adni, hogy miként csökkentsük az esélyét a lehetséges SPAM jelölésnek email-jeinken.
- Állítsunk be SMTP-t, titkosítással küldjünk
- Domain legyen megfelelően beállítva
- Amennyiben használunk külső email szolgáltatást (például hírlevélhez) az is megfelelően legyen beállítva
- Kerüljük, hogy túl sok link legyen a levélben
- Csökkentsük a képi elemeket, amennyire lehet és inkább CSS-el formázzuk, díszítsük az email-eket (ott CSS animációt felejtsük el)
- Ne használjunk a levelezésben CSS3-as és HTML5-ös elemeket (sok a régi levelező kliens és szerver) és törekedjünk a két nyelv szabályainak betartására (továbbá ne akarjunk külső CSS-t meghívni, minden formázási kód inline legyen)
- Hírlevélnél legyen leiratkozási link, egyértelműen (például nem kisbetűvel, halvány színnel, valami frappáns szöveggel)
- Ne használjunk levelekben (még egy jó ideig) webp formátumú képet, illetve ha lehet png helyett is jpg/jpeg-et használjunk és minél kevesebbet
A levelek spam szintjén tesztelhetjük egyszerűen például a https://www.mail-tester.com/ szolgáltatásával, pár perc alatt. 8/10 érték felett már jónak számít.
Gmail SMTP mint honlap email küldő
Egy fontos tippet még a végére adnék. Ne akarjuk weboldalaink kimenő levelezését Gmail fiókunkkal végezni. Nem túl célravezető és több lesz vele a problémánk, mint sejtenénk. Használjunk inkább MailGun-t, Amazon SES-t, hogy csak kettő nagyobb nevet említsek. Egyfelől már csak és kizárólag Google API-val lehet bekötni (ami nem egy kezdő szint ismeretet igényel, másfelől ingyenes Gmail fiókban ez nem engedélyezett és egy bizonyos napi email mennyiség után megnézhetik a levelezést. Maximum üzleti Gmail fiókot kössünk be.