Acorn Mail: ett modernare sätt att köra SMTP i WordPress (utan struliga plugins)
Att få utgående e-post från WordPress att fungera stabilt är en sån där klassiker som dyker upp på nästan varje projekt förr eller senare. I dev funkar det “ibland”, i staging beter det sig annorlunda, och i produktion blir det supportärenden när lösenord roteras eller en mailserver kräver striktare inställningar.
Många löser det med ett SMTP-plugin, men det har sina baksidor: dels kan plugins vara opålitliga mellan miljöer, dels innebär det ofta att man lägger känslig konfiguration i admin (eller i databasen) och bygger in ännu ett rörligt beroende. Det finns också exempel på att SMTP-plugins har haft sårbarheter, till och med sådana som hamnar i CVE-databaser (t.ex. CVE-2023-6875).
Roots har nu släppt Acorn Mail: ett paket som kopplar SMTP-konfiguration till Acorns sätt att arbeta med miljövariabler och CLI. Tanken är att göra två saker enklare: 1) konfigurera SMTP konsekvent över miljöer, och 2) kunna testskicka och få tydliga fel när något går snett.
Vad är Acorn Mail (och varför är det intressant)?
Acorn Mail är ett tillägg till Roots Acorn (ett ramverk/verktygslager för WordPress som bland annat ger en CLI och Laravel-inspirerade byggstenar). I praktiken gör Acorn Mail en sak: när den ser att dina mail-credentials finns satta, konfigurerar den WordPress inbyggda PHPMailer-instans att använda SMTP.
PHPMailer är biblioteket WordPress använder under huven för att skicka e-post. Vanligtvis “hookar” SMTP-plugins in sig där för att ändra transporten från mail() till SMTP. Skillnaden här är att konfigurationen flyttas till miljövariabler och blir mer deploy-vänlig, och att testning sker via CLI istället för via en admin-sida med begränsad felsökning.
Installation via Composer
Acorn Mail installeras som ett Composer-paket (vilket passar bra i Roots-stacken och generellt i modern WordPress-utveckling där beroenden hanteras i kod):
composer require roots/acorn-mailGrundkonfiguration med miljövariabler
Efter installationen konfigurerar du SMTP via environment variables (miljövariabler). När variablerna finns och inte är tomma kommer Acorn Mail automatiskt att koppla upp SMTP på WordPress PHPMailer.
MAIL_HOST=
MAIL_PORT=
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_FROM_ADDRESS=
MAIL_FROM_NAME=Varför env-variabler?
När SMTP-uppgifter ligger i .env (och hanteras via din deploy/secret manager) blir det enklare att hålla samma setup i dev/staging/prod utan att klicka runt i admin. Det minskar också risken att råka exportera hemligheter via databasen eller config-synk.
Avancerad konfig: publicera mail.php
Behöver du mer än grundvariablerna går det (enligt Roots upplägg) att publicera en konfigfil. Acorn Mail kan då skapa en mail.php-konfiguration som du kan justera:
wp acorn mail:configDet här passar när du vill ha en mer explicit konfig i projektet, men fortfarande bygga på samma grundprincip: miljödriven konfiguration och förutsägbart beteende mellan miljöer.
Testskicka e-post via CLI (och få riktiga fel)
Den kanske mest praktiska delen är testkommandot. Istället för att trycka på “Send test email” i ett plugin och få “något gick fel”, kan du testskicka via Acorns CLI och få fel som faktiskt går att agera på (auth, TLS, host, port, etc.).
wp acorn mail:test [--to=]Kommandot skickar ett testmejl till angiven adress och ska enligt beskrivningen presentera eventuella fel längs vägen på ett tydligare sätt. Det gör det enklare att verifiera SMTP-uppgifter direkt i den miljö där problemet uppstår, utan att behöva bygga egna debug-hooks eller gissa vad PHPMailer klagar på.
När passar Acorn Mail (och när gör det inte det)?
Acorn Mail är mest relevant när du redan använder Acorn i en Roots-inspirerad setup, eller när du vill drifta WordPress mer som en modern applikation: Composer för beroenden, .env för konfig och CLI för verktyg.
- Passar bra om du vill slippa SMTP-plugins och hellre konfigurera via deploy/infra.
- Passar bra om du behöver snabbt kunna testskicka i staging/production med tydlig output.
- Mindre relevant om du inte kör Acorn eller inte har en Composer-baserad WordPress-stack.
Sammanfattning
Acorn Mail är Roots svar på ett vardagsproblem: SMTP i WordPress som är svårt att få stabilt och svårt att felsöka. Med Composer-installation, env-baserad konfiguration och ett CLI-kommando för testmejl får du ett mer förutsägbart flöde över miljöer och mindre beroende av admin-baserade plugins.
Referenser / Källor
Hannah Turing
WordPress-utvecklare och teknisk skribent på HelloWP. Jag hjälper utvecklare att bygga bättre webbplatser med moderna verktyg som Laravel, Tailwind CSS och WordPress-ekosystemet. Passionerad för ren kod och utvecklarupplevelse.
Alla inlägg