Wat het doet
WordPress geeft elke e-mail door aan de eigen mail()-functie van de server, en die doet geen authenticatie. Mailboxen beschouwen die post als verdacht, en wordt ze geweigerd, dan hoort niemand daarvan: wp_mail() geeft false terug, de pagina gaat gewoon verder, en de wachtwoordreset of de orderbevestiging is simpelweg weg.
MevvMail vervangt dat pad. Het verstuurt via een geauthenticeerde verbinding die u instelt, doorloopt een lijst met verbindingen op volgorde van prioriteit tot er één het bericht aanneemt, probeert opnieuw wat mislukt, en toont de verzendstatus van een WooCommerce-bestelling meteen op het bestelscherm.
- Gebruik het wanneer
- Uw winkel verstuurt bestel-, account- of factuurmail en u moet de vraag “is hij verstuurd?” met een registratie kunnen beantwoorden in plaats van met een gok.
- Zolang u het niet instelt, verandert het niets
- Zolang er geen verbinding is gedefinieerd, geeft het filter de verzending meteen terug aan WordPress. De plug-in activeren neemt nooit stilzwijgend een werkend mailpad over.
- Het is geen verzenddienst
- MevvMail verkoopt geen bezorging door en heeft geen eigen quotum. U brengt uw eigen SMTP-server of uw eigen provideraccount mee, en de plug-in gebruikt die.
Vereisten: WordPress 6.0 of nieuwer en PHP 8.1 of nieuwer. WooCommerce is optioneel — zonder WooCommerce werkt alles hetzelfde en ontbreekt alleen het bestelvak.
Installatie
- Installeer de gratis plug-in MevvMail: upload de zip via Plugins → Nieuwe toevoegen, of kopieer de map
mevvmailnaar/wp-content/plugins/. - Activeer de plug-in. Er wordt nog niets overgenomen.
- Open MevvMail → Verbindingen en voeg uw eerste verbinding toe.
- Druk op Test-e-mail versturen en controleer of het bericht aankomt.
- Optioneel maar aanbevolen: voeg als terugval een tweede verbinding met een lagere prioriteit toe.
- Alleen als u de Pro-schermen wilt: installeer MevvMail Pro als tweede plug-in en activeer uw MEVM-licentie onder MevvMail → Licentie.
Houd de gratis plug-in actief zolang Pro is geïnstalleerd. Bezorging, failover en het logboek zitten in de gratis plug-in, dus een verlopen licentie legt het mailverkeer van uw winkel nooit stil.
Verbindingen
Een verbinding is één uitweg uit uw site. Er zijn tien typen beschikbaar en ze zitten allemaal in de gratis plug-in: geen enkele functie achtergehouden en geen verzendlimiet van onze kant.
De velden op het scherm
- Naam
- Uw eigen label voor de verbinding. Dit is wat het logboek toont in de kolom Verbinding, dus geef een naam die u om drie uur 's nachts herkent.
- Provider
- Kies het type. De rest van het formulier verandert mee: SMTP vraagt om een host, een poort, versleuteling en inloggegevens, terwijl een API-provider om een sleutel vraagt en bij Mailgun en SparkPost ook om een regio.
- Prioriteit
- Een getal. De keten wordt doorlopen van de laagste prioriteit omhoog, dus uw hoofdverbinding krijgt het kleinste getal en de terugval een groter getal.
- Afzendernaam en afzenderadres
- De afzender waaronder het bericht naar buiten gaat. Gebruik een adres op een domein waarvan de SPF-, DKIM- en DMARC-records naar de provider wijzen via wie u verstuurt; anders blijft de mailbox ook keurig bezorgde post wantrouwen.
- Deze afzender bij elke e-mail afdwingen
- Standaard uit. Staat de optie aan, dan overschrijft deze verbinding welke afzender het bericht ook droeg. Handig wanneer een plug-in verstuurt onder een adres dat uw provider niet toestaat; schadelijk wanneer u juist per plug-in een eigen afzender nodig hebt.
- Actief
- Een inactieve verbinding wordt door de keten overgeslagen en blijft op het scherm staan. Zo haalt u één provider uit dienst zonder de instellingen ervan kwijt te raken.
Opgeslagen geheimen worden nooit terug in het formulier gezet. De velden voor het wachtwoord en de API-sleutel tonen “Opgeslagen — laat leeg om te behouden”: typ alleen een waarde wanneer u die vervangt.
Test het voordat u erop vertrouwt
Test-e-mail versturen stuurt een echt bericht via alleen die ene verbinding en schrijft het resultaat naar het logboek, net als elke andere verzending. Mislukt het, dan draagt het logboek het eigen antwoord van de provider — en dat is bijna altijd de zin die u vertelt wat er mis is.
De keten, en wat er gebeurt als ze faalt
Zodra WordPress een e-mail aanmaakt, doorloopt MevvMail uw verbindingen op volgorde van prioriteit en stopt bij de eerste die het bericht aanneemt. Een provider die snelheidslimieten oplegt, door zijn quotum heen is of plat ligt, kost u een poging, niet de e-mail. De hele doorloop wordt vastgelegd als één logboekregel, niet één per verbinding: één e-mail hoort niet als drie afzonderlijke mislukkingen te lezen.
Wanneer elke verbinding heeft geweigerd, wordt de regel als mislukt vastgelegd en in de wachtrij gezet voor een nieuwe poging. Er volgen nog drie pogingen — na één minuut, vijf minuten en dertig minuten — en dan stopt het. Een adres dat niet bestaat, begint bij de veertigste poging niet te bestaan.
Nieuwe pogingen worden ingepland met WP-Cron, en dat draait alleen wanneer iemand de site bezoekt. Op een rustige site kan een nieuwe poging later vallen dan de minuut waarvoor ze was ingepland. Maakt dat voor u verschil, stap dan op de gebruikelijke manier over op een echte servercron — DISABLE_WP_CRON in wp-config.php plus een aanroep van wp-cron.php vanuit crontab. Aan MevvMail hoeft daarvoor niets te veranderen.
Een keten die iets waard is
- Twee verbindingen bij twee verschillende providers beschermen u tegen de slechte dag van één provider. Twee verbindingen bij dezelfde provider niet.
- Houd één SMTP-verbinding in de keten, anders kunnen e-mails met bijlagen nergens heen (zie hieronder).
- PHP
mail()is een redelijk laatste redmiddel maar een slechte eerste keuze: het is precies het pad zonder authenticatie dat de plug-in moet vervangen.
Het e-maillogboek
Elke poging wordt vastgelegd in een tabel in uw eigen database. Niets over uw e-mail wordt naar ons gestuurd — nergens in de plug-in zit telemetrie, analyse of inhoudsscanning.
- Wat er wordt vastgelegd
- Tijdstip, ontvangers, onderwerp, status, de verbinding die het bericht heeft afgehandeld, het onderdeel van de site dat het heeft aangemaakt, het eigen antwoord van de provider en het aantal pogingen.
- Filters
- Op status (verzonden, mislukt, in behandeling), op bron en op datum. Die drie samen zijn meestal het hele onderzoek bij een supportvraag.
- Bron
- Een bericht kan een label dragen dat zegt welke plug-in het heeft aangemaakt — een formulier, een herstelmail, een WooCommerce-melding. Het label wordt in een eigen kolom vastgelegd en van het bericht gehaald voordat het naar buiten gaat, zodat het nooit terechtkomt bij degene die de e-mail ontvangt.
- Opnieuw verzenden
- Elke regel kan vanuit de lijst opnieuw worden verzonden. Het bericht gaat weer vanaf het begin door de keten, zodat een verbinding die inmiddels is hersteld ook wordt gebruikt.
- De berichttekst bewaren
- Standaard aan. Zet u het uit, dan bewaart het logboek alleen de kopregels. Zo'n regel kan dan wel worden bekeken maar niet opnieuw worden verzonden — en een verzending die mislukt, wordt ook niet in de wachtrij gezet voor de retry-ladder, want in beide gevallen is er niets bewaard om te versturen.
- Logboekregels bewaren gedurende
- 7, 30, 90 dagen of voor altijd. Oudere regels worden volgens een schema verwijderd.
Het logboek kan persoonsgegevens bevatten — adressen, onderwerpen en, als u de instelling aan laat staan, berichtteksten. Beoordeel de bewaartermijn en de optie voor de berichttekst vóór livegang aan de hand van uw eigen verplichtingen, net zoals u dat bij elk ander winkelrecord zou doen.
Verwijderen
De plug-in verwijderen laat uw logboek en instellingen met rust. Op het scherm Instellingen staat één opt-in — Bij het verwijderen van de plug-in ook de logboektabel en alle instellingen wissen — en die staat standaard uit, want de destructieve lezing van “verwijderen” hoort nooit degene te zijn die u per ongeluk krijgt.
Bijlagen
In versie 1.0.0 reizen bijlagen alleen over SMTP. De acht API-providers versturen ze niet, en dat is een bewuste grens en geen fout: elk van die API's wil een bestand in een andere vorm, en acht half geteste encoders uitbrengen was het niet waard.
- Een e-mail met een bestand slaat API-verbindingen definitief over en zoekt een SMTP-verbinding in de keten.
- Met een ingestelde SMTP-verbinding gaan facturen, tickets en PDF's gewoon de deur uit.
- Zonder ingestelde SMTP-verbinding wordt zo'n e-mail als mislukt vastgelegd in plaats van bezorgd zonder het bestand — een stille bezorging zonder de factuur zou erger zijn dan een zichtbare mislukking.
De praktische regel is één zin lang: houd één SMTP-verbinding in de keten, wat er verder ook in zit.
WooCommerce-bestellingen
Met WooCommerce actief krijgt elk bestelscherm een vak met de e-mails die die bestelling heeft opgeleverd en de verzendstatus van elk daarvan. De vraag “heeft de klant de bevestiging gekregen?” wordt bij de bestelling beantwoord in plaats van door een logboek te doorzoeken.
Het logboek legt ook vast welke WooCommerce-e-mail een bericht was, zodat een nieuwe poging een half uur later nog steeds weet wat ze verstuurt — en, met een Pro-licentie, welke routeringsregel en welke onderwerpregel erop van toepassing zijn.
MevvMail werkt op een site zonder WooCommerce precies hetzelfde. Alleen het bestelvak is er niet.
Wat een Pro-licentie toevoegt
Alles hierboven zit in de gratis plug-in: tien verbindingstypen, de failoverketen, de retry-ladder, het logboek, opnieuw verzenden en het WooCommerce-bestelvak. Pro is een aparte plug-in die boven op de bezorging WooCommerce-diepgang toevoegt.
- WooCommerce-e-mailontwerper
- Een logo, een basiskleur, een achtergrondkleur, voettekst en een onderwerpregel per e-mailtype, met een voorbeeld van het opgeslagen ontwerp. Het ontwerp wordt toegepast door de gratis plug-in, dus het blijft staan wanneer de licentie wordt uitgeschakeld.
- Openingsregistratie
- Een optionele pixel van 1×1 die uw eigen site serveert, vastgelegd als één tijdstempel in de kolom Geopend van het logboek. Standaard uit. Er wordt geen IP-adres, e-mailprogramma, verwijzer, locatie, apparaat of aantal openingen verzameld, en nergens wordt een openingspercentage getoond.
- Storingswaarschuwingen
- Eén e-mail of webhook per storing, na een door u gekozen aantal opeenvolgende mislukkingen. De waarschuwing gaat via het eigen mailpad van de server naar buiten — zodat ze u nog kan bereiken wanneer juist uw verbindingen kapot zijn — en ze draagt geen ontvanger, onderwerp of berichttekst uit het mislukte bericht mee.
- Voorwaardelijke routering
- Regels op het bronlabel of het WooCommerce-e-mailtype zetten een verbinding vooraan in de keten. De keten wordt nooit versmald, dus failover blijft werken, en de regel past ook nog bij een uitgestelde nieuwe poging.
De licentie wordt geactiveerd onder MevvMail → Licentie met een sleutel die met MEVM begint. Verloopt ze, dan stoppen de ontwerper, de openingsregistratie, de waarschuwingen en de routering; bezorging, failover en het logboek gaan door, want die waren nooit van Pro om vast te houden.
Openingsregistratie is een aanwijzing, geen meting. Een mailbox die afbeeldingen blokkeert of een proxy die ze in de cache zet, maakt de pixel stil of te vroeg. Daarom wordt alleen de eerste opening bewaard, en daarom toont het product geen openingspercentage.
Wat uw server verlaat
Twee dingen, en ze staan hier allebei.
- Uw e-mail, naar de provider die u hebt ingesteld. Afzender, ontvangers, onderwerp, berichttekst, een eventuele Reply-To en eigen kopregels, en uw eigen API-sleutel zodat de provider u kan authenticeren. MevvMail voegt niets toe — geen siteadres, geen gebruikersgegevens, geen identificatie van ons — en er gaat niets naar welke provider dan ook tot u een verbinding van dat type aanmaakt.
- Een updatecontrole. Twee waarden, de slug van de plug-in en het geïnstalleerde versienummer, verstuurd naar
https://mevvsoft.com/api/v1/license/free-updatewanneer WordPress zijn eigen updatecontrole draait en het antwoord in de cache ouder is dan twaalf uur. Geen siteadres, geen e-mailadres, geen licentiesleutel, geen plug-inlijst, geen gebruiksstatistieken. Het antwoord is ondertekend en een niet-ondertekend antwoord wordt weggegooid. De versie die via de WordPress Plugin Directory wordt verspreid, bevat het updaterbestand helemaal niet.
De uitgever ontvangt van deze plug-in geen e-mailinhoud, geen ontvangeradressen, geen logboekregels en geen analysegegevens. Het logboek is een tabel in uw eigen database, en u bepaalt hoe lang het wordt bewaard en of berichtteksten überhaupt worden bewaard.
Problemen oplossen
- Het logboek zegt verzonden, maar het bericht kwam niet aan
- “Verzonden” betekent dat de verbinding het bericht heeft aangenomen, niet dat de mailbox het in het postvak IN heeft gezet. Kijk eerst in de spammap en controleer daarna of het afzenderadres op een domein staat waarvan de SPF-, DKIM- en DMARC-records de provider toestaan via wie u verstuurt. Het meeste van de post die in dit stadium verdwijnt, is authenticatie en geen bezorging.
- Alles mislukt op de eerste verbinding
- Open de regel en lees het eigen antwoord van de provider: het wordt bij de poging bewaard. Een verkeerde poort en verkeerde versleuteling, een verlopen sleutel en een afzender die de provider niet toestaat, verklaren de meeste gevallen.
- Een e-mail met een bijlage is mislukt
- Controleer of uw keten een SMTP-verbinding bevat. Zonder zo'n verbinding wordt een e-mail met een bestand met opzet als mislukt vastgelegd.
- Nieuwe pogingen komen er nooit
- Twee oorzaken. WP-Cron draait alleen wanneer iemand de site bezoekt, dus op een rustige site wacht de nieuwe poging op verkeer — of stap over op een echte servercron. De andere is “De berichttekst bewaren”: staat die uit, dan is er niets om het mee opnieuw te proberen, en wordt de mislukte regel met opzet met rust gelaten.
- De knop Opnieuw verzenden deed niets
- Die regel is zonder berichttekst vastgelegd, dus er valt niets te versturen. Zet “De berichttekst bewaren” weer aan voor de regels die u misschien opnieuw wilt verzenden.
- De Pro-schermen ontbreken
- Controleer of de gratis plug-in actief is, of de Pro-plug-in actief is en of de licentie is geactiveerd. Alle drie zijn nodig, en het licentiescherm zegt welke ervan niet in orde is.
Stuur ons bij een vraag de versies van de plug-ins, de versies van WordPress en PHP, het verbindingstype en de exacte tekst van het antwoord van de provider uit de logboekregel. Haal er eerst klantadressen en de berichttekst uit; dat antwoord is bijna altijd op zichzelf genoeg.