WordPress e-mail problemer

Jonas Bronee / 9 måneder siden

Hvorfor driller e-mails i WordPress mig?

For at en hjemmeside med kunde interaktion kan køre 100%, skal der være mulighed for at kunne kommunikere klart og tydeligt ud til brugere, og mulige kunder. Derfor er e-mail kontakten fra ens hjemmeside et af det vigtigste redskaber vi har til rådighed, især for webshops som baserer meget af e-mail kontakten på at kunne fremsende fakturaer, ordre-bekræftelser, etc. Ofte går der dog noget galt ved fremsendelsen, og det kigger vi lidt nærmere på.

Det sker ofte at en helt ny WordPress hjemmeside er blevet sat op, og kører derud af. Der er dog bare et enkelt problem. Alle e-mails der bliver sendt igennem formularer på siden, ordre e-mails fra WooCommerce, eller bare sikkerheds e-mails fra kontrolpanelet går tabt. Formularerne melder ingen fejl, diverse logning plugins melder ingen fejl, og alt ser ud til at se ud som om at det virker. Så hvad er det der går galt?

WordPress bruger PHPMailer

WordPress bruger som standard en funktion til at sende e-mails, kendt som PHPMailer. Problemet med denne funktion er, at den på basisniveau ofte bliver helt sorteret fra af de store e-mail klienter. Derfor vil e-mailen enten havne i spam-mappen hos modtageren, eller fuldstændigt blive sorteret fra så den ikke havner hos den ønskede modtager. Samtidigt vil din hjemmeside rapportere at alt er helt i orden på e-mail fronten, da der i dens systemer ikke er gået noget galt rent teknisk. Problemet opstår altså først efter at e-mailen har forladt din hjemmeside, og bliver sorteret fra ved modtagerens e-mail udbyder.

Så hvad er problemet med WordPress?

Problemet er opstået af spam e-mails. Omkring 80% af alle e-mails sendt på internettet, er kategoriseret spam. For at afsendere af spam e-mails ikke selv skal sidde og afsende alle disse e-mails, bruger de typisk funktioner der kan gøre det nemt, hurtigt og automatisk for dem. En af disse metoder er igennem systemer som PHPMailer. Derved er rigtig mange e-mails grålistet allerede fra det tidspunkt de bliver afsendt, medmindre de er opsat igennem en såkaldt e-mail server, som kører med SMTP. SMTP, eller Simple Mail Transfer Protocol, håndtere dine e-mails fra start til slut, og det er typisk også en SMTP klient der modtager de e-mails du sender, eller afviser dem hvis den ikke kan genkende den SMTP afsenderen. En anden forskel på SMTP og mere traditionelle e-mail systemer, er at de mere traditioneller e-mail systemer som PHPMailer afsender en e-mail, og gør ikke mere herefter. SMTP afventer at forbindelsen til modtageren er åbnet, og hvis den ikke virker første gang, så forsøger den igen. Alene ved at forsøge igen, reduceres mængden af spam e-mails med over 80%.

Hvordan løser vi e-mail problemet i WordPress?

For at løse problemet, skal vi have sat vores WordPress side op til at køre over SMTP. Dette foregår typisk i flere led, da der er flere faktorer der spiller ind.

Først og fremmest kræver det at du har SMTP oplysningerne for den e-mail du forsøger at sende fra. Er din e-mail udbudt af din hjemmeside host, kan du typisk forhøre dem om de nødvendige SMTP oplysninger. Er din e-mail udbudt af en dedikeret mail udbyder(Windows/Hotmail/Live mail/Outlook, Google mail, Yahoo mail, etc), så bør du kontakte deres support for at få fat i de relevante informationer.

Typisk skal der bruges følgende informationer:

  • SMTP host – Dette er serveren som vi ønsker at sende igennem
  • SMTP port – Dette er en kommunikationsport som serveren ønsker at vi kommunikerer med den igennem

I størstedelen af alle tilfælde vil du også skulle bruge:

  • Brugernavn
  • Kodeord
  • Sikkerhedkryptering – Typiske valg er “Ingen”, “TLS”, og “SSL”. Forhør din e-mail udbyder om hvilken de anvender

Med disse informationer er du nu klar til at opsætte din WordPress installation til at køre over SMTP. Er du typen der gerne vil anvende plugins til formålet, kan vi anbefale WP Mail SMTP til formålet. Herigennem har du også mulighed for at sende en test e-mail, for at bekræfte at din hjemmeside nu sender e-mailen korrekt.

Systemet er nemt at sætte op, såfremt du har oplysningerne som nævnt ovenover.

Først skal du vælge den afsender e-mail og navn, som du ønsker skal fremgå af den e-mail du sender. Typisk bør afsender e-mail være den samme, som den du bruger til brugernavn ved autentisering af din SMTP bruger, da nogle SMTP servere kan finde på at afvise dig hvis de ikke stemmer overens. Herefter skal du vælge den ønskede e-mail service som du ønsker at sender igennem.

PHP er standard, og kører over førnævnte PHPMailer system, men ofte skal du vælge “Other (SMTP)” medmindre din e-mail service kører over en af de andre klienter som er vist.
Til sidst skal du indtaste de oplysninger som du har fået oplyst af din e-mail udbyder, og herefter gemme. Hvis det virker, bør du nu være i stand til at sende en e-mail igennem fanebladet “Email  test”, uden problemer.

Er du typen der hellere vil gøre det selv, har Github brugeren “butlerblog” lavet denne simple guide til hvordan du får det til at virke med henholdsvis din functions fil, og wp-config. Dette kræver dog noget forgående kendskab til begge filer.

Udbytte og resultat med WordPress SMTP opsætning

Hvad får vi så ud af at have sat alt dette op? Simpelt sat op, så kan vi nu forvente at vores e-mails kommer frem som de skal, og at vi til enhver tid kan regne med at de e-mails der bliver afsendt fra siden rent faktisk havner hvor de skal. Det kan for nogen være en større opgave at skulle igennem denne opsætning, men resultatet er ikke til at tage fejl af, og er et af de vigtigste skridt man kan tage for at ens WordPress side får leveret e-mails korrekt til modtager.