Title: DadsFam SMTP
Author: dadsfam
Published: <strong>11 Agustus 2026</strong>
Last modified: 16 Oktober 2026

---

Cari plugin

![](https://ps.w.org/dadsfam-email-smtp/assets/banner-772x250.png?rev=3714354)

![](https://ps.w.org/dadsfam-email-smtp/assets/icon-256x256.png?rev=3681171)

# DadsFam SMTP

 Oleh [dadsfam](https://profiles.wordpress.org/dadsfam/)

[Unduh](https://downloads.wordpress.org/plugin/dadsfam-email-smtp.2.3.0.zip)

 * [Detail](https://id.wordpress.org/plugins/dadsfam-email-smtp/#description)
 * [Ulasan](https://id.wordpress.org/plugins/dadsfam-email-smtp/#reviews)
 *  [Instalasi](https://id.wordpress.org/plugins/dadsfam-email-smtp/#installation)
 * [Pengembangan](https://id.wordpress.org/plugins/dadsfam-email-smtp/#developers)

 [Bantuan](https://wordpress.org/support/plugin/dadsfam-email-smtp/)

## Deskripsi

WordPress sends email with PHP’s `mail()` function, which most hosts either block
or deliver straight to spam. **DadsFam SMTP** replaces it with a real authenticated
SMTP connection, so your password resets, contact forms and WooCommerce order emails
actually arrive.

Everything described below works on every site. Nothing is disabled, blurred out,
time-limited or reduced.

#### DadsFam AI: your email, watched and fixed

New in 2.2. Open **DadsFam SMTP  DadsFam AI** and the first thing you see is the
answer to the only question that matters: is my email working? If it is not, it 
says why, in plain words, and what to do about it.

 * **Every failure explained.** It reads what your mail server actually said and
   tells you what it means: the password was turned down, Gmail wants an app password,
   Microsoft 365 has SMTP sign-in switched off, the address does not exist, your
   server’s IP is on a blocklist. With the steps to fix it, and whether sending 
   again can work (later, after a fix, or never).
 * **It checks everything, every day.** A real sign-in to your mail server (nothing
   is sent), its certificate, whether another plugin has taken over WordPress’s 
   email, whether staging mode was left on, your SPF, DKIM and DMARC records, the
   log table and the scheduled tasks.
 * **It learns your site.** What your site sends (order receipts, password resets,
   each contact form), how often and when. It warns you when a kind of email goes
   quiet for longer than your site’s own rhythm allows, when a form starts sending
   floods of spam, or when more email fails than is normal for you.
 * **It fixes what is safe, and proves it first.** It only switches to a connection
   that has just signed in with your own password, uses the DKIM selector your domain
   really publishes and sends from the address your mail server accepts. In “Ask
   me first” mode you tap Apply; on Autopilot it does this by itself, keeps watching,
   and puts a change back if it makes things worse. Every change goes in a diary
   with an Undo.
 * **Ask it anything.** “Did sarah@example.com get her receipt?”, “Did order 1234
   go out?”, “Why did emails fail this week?”, “What does 535 mean?”, “Stop emailing
   bob@example.com”. Answered from your own email log, with the buttons to act on
   it. A question never changes anything by itself, and it learns your way of asking
   from the suggestions you pick.
 * **It keeps you posted without nagging.** A dashboard widget, an optional weekly
   letter on Monday mornings, and one notice on the Dashboard and Plugins screens
   only when your email is actually failing.

#### New in 2.3: it learns, remembers and looks after itself

 * **A first look the moment you open it.** The full check runs straight away, so
   the health score you see is measured, not assumed.
 * **It knows what your older emails were.** Emails logged before 2.2 did not record
   who sent them. It works them out from WordPress’s and WooCommerce’s own wording,
   from the emails your site sends now, and from the words in your installed plugins’
   own code, so “Other emails” turns into password resets, order receipts and each
   plugin by name. Only what it is sure of, and all of it can be undone in one tap.
 * **It remembers what happened.** When email fails, it remembers for how long, 
   what it cost and what made it work again. The next time, it tells you: “this 
   happened on 3 October; changing the password fixed it then”, or “last time it
   cleared by itself in 40 minutes”.
 * **The emails that failed can still go out.** Once email works again, the ones
   that failed meanwhile are offered with one tap, once each. On Autopilot it can
   do this by itself when you switch it on. Never password resets, never to addresses
   that do not exist, never twice.
 * **It holds a flood.** When one form or plugin suddenly sends far more than your
   site ever has, it can hold just that kind of email, keep every one in the log,
   and let everything else through, so your provider does not suspend you. You look,
   then send them all or delete them. Order emails, password resets and emails with
   attachments are never held, and it ends by itself once that kind of email is 
   back to its usual pace. Off until you switch it on.
 * **Bounces after sending.** Your mail server accepting an email is not always 
   the end: the other side can send it back later. Switch this on and it reads the
   bounce messages in your mailbox (read-only), marks those emails Bounced, says
   why, and offers to stop emailing addresses that do not exist.
 * **It watches your DNS.** When your SPF, DKIM, DMARC or MX records change, the
   diary says what changed, and a check that starts failing tells you what the record
   used to be.
 * **Better advice on DMARC.** A policy of p=none only watches; it now says so, 
   with the record to move to once SPF and DKIM both pass.

DadsFam AI runs entirely inside your WordPress, on your own server. It does not 
use OpenAI, ChatGPT, Claude or any other outside service, there is no API key, and
nothing about your email leaves your site. Switch it off completely with `define('
DFSMTP_BRAIN_OFF', true );` in wp-config.php.

#### Set up in about two minutes

Pick your provider from the list and the host, port and encryption fill themselves
in. Enter your username and password, save, then send a test email. The test shows
you the full SMTP conversation, so if something is wrong you can see exactly which
step failed.

#### Supported providers

Gmail, Outlook and Office 365, SendGrid, Mailgun, Amazon SES, Brevo, Postmark, SparkPost,
Zoho Mail, Yahoo Mail, Hostinger, cPanel, and any custom SMTP server.

#### Features

 * **13 pre-configured providers** with automatic host, port and encryption defaults
 * **Per-provider setup notes** built into the interface, including the common gotchas
 * **AES-256-GCM encrypted credentials** — passwords are never stored as plain text
 * **Full sender control** — From Name, From Email, Reply-To and Return-Path
 * **Unlimited email logging** with status, subject, recipient, connection and timestamp
 * **Retention control** — keep logs for as many days as you choose, or forever
 * **One-click resend** of any logged email
 * **Full email body viewer** in a sandboxed preview frame
 * **CSV export** of your entire delivery history
 * **Send test email** with live SMTP diagnostic output
 * **Connection test** that opens a real socket and speaks SMTP, without sending
   anything
 * **Deliverability checker** for SPF, DKIM, DMARC and MX records
 * **Email health score** combining DNS authentication, configuration and real send
   history
 * **Delivery failure alerts** by email
 * **Blocking mode** stops all outgoing mail on staging sites while still logging
   attempts
 * **Suppression list** for addresses and domains that must never be contacted
 * **Analytics** with a seven-day delivery chart and per-connection success rates
 * **WooCommerce diagnostics** — confirm store emails route correctly and test each
   type
 * **DadsFam AI** — plain-English failures, daily checks, safe self-fixes with Undo,
   and answers about your email (see above)
 * **Flood guard** — holds a sudden flood from one form or plugin while everything
   else keeps going (off until you switch it on)
 * **Bounce reading** — optional, read-only: marks emails the other side sent back,
   with the reason
 * **Message-ID recorded** for every email sent
 * **Dashboard widget** with the answer to “is my email working?”, the numbers, 
   and a question box
 * **Backup and migrate** your configuration as JSON
 * **Documented hook API** for developers

#### WooCommerce

DadsFam SMTP hooks in at a late priority, so it wins over WooCommerce’s own From
address settings and your store emails always send from the address you configured.
The diagnostics screen flags any mismatch between the two and lets you test-send
each WooCommerce email type.

Declared compatible with High-Performance Order Storage and Cart & Checkout Blocks.

#### Extending the plugin

The plugin exposes documented actions and filters — `dfsmtp_configure_mailer`, `
dfsmtp_after_configure_mailer`, `dfsmtp_mail_failed`, `dfsmtp_mail_logged`, `dfsmtp_save_settings`,`
dfsmtp_settings_page_end`, `dfsmtp_nav_pages` and others — so you can layer your
own behaviour onto the send pipeline. The full list is documented in the header 
of `dadsfam-email-smtp.php`.

An optional commercial add-on, DadsFam SMTP PRO, is built on this same hook API 
for stores and agencies sending at higher volume. It is a separate plugin and is
not required — this plugin is complete on its own.

#### A word about PRO

Right, let me be straight with you, because I hate being sold to as much as you 
do.

Everything above is free and it stays free. Sending your mail through a proper SMTP
server is not a premium feature. Saving your provider details, encrypting your password,
logging what went out and resending one that failed are not premium features. Those
are things a plugin like this should just do, and if I put them behind a paywall
I would be taking the mickey.

There is a PRO add-on. It exists because I am a dad in Cape Town, and this is one
of the things that puts food on the table at my house. That is the honest reason.
Not “unlock your potential”, not “supercharge your workflow”. Just: if this plugin
got your email sending again and you can spare it, PRO helps me keep building.

There is one PRO version and one price: R500 once off, roughly $35, per plugin. 
It is not a subscription, there is no yearly renewal, and it does not expire. Pay
once and it stays yours, updates included. If the free version does everything you
need, use that and think nothing of it — it is not crippled to push you across, 
and it never will be.

What PRO adds is the stuff you only want once you are sending real volume — sending
from more than one mailbox and routing each message to the right one, failing over
to a backup server when your main one has a bad day, retrying failed sends on their
own, open and click tracking, failure alerts into Slack or Discord, and a weekly
delivery digest. That is convenience and automation. It is not the plugin working
properly, because the plugin already works properly.

So if the free one does everything you need, brilliant. Genuinely. Use it, and I
hope it saves you a frustrating afternoon chasing email that will not send. If you
get to the point where the automation would save you real time, PRO is at plugins.
dadsfam.co.za.

Either way, thanks for using something I built. — Zak, DadsFam

PRO adds:

 * Multiple saved SMTP connections
 * Smart routing by subject, sender or recipient domain
 * Automatic failover to a backup server
 * Auto-retry of failed emails
 * Open and click tracking
 * Slack, Discord and webhook failure alerts
 * Weekly delivery digest and hourly send limits

### External services

This plugin does not connect to any service of its own. It has no home-phoning, 
no analytics and no licence checks.

It does, however, exist to hand your website’s email to an SMTP server that **you**
choose and configure. That server is a third party service, and what it receives
is entirely determined by your own settings.

**What is sent:** the emails your WordPress site produces — sender, recipients, 
subject, message body and any attachments — together with the username and password
you entered, so the server will accept them.

**When it is sent:** only when WordPress sends an email, and only once you have 
entered SMTP details and saved them. With no details entered, the plugin sends nothing
anywhere.

**Where it is sent:** to the host you type into the settings, and nowhere else.

**DadsFam AI** (2.2.0) adds no outside service. It checks the mail server you configured
by connecting and signing in to it the way your site does, and stops before anything
is sent. It reads your domain’s public SPF, DKIM, DMARC and MX records through your
server’s own DNS resolver. Nothing about your email, your log or your questions 
is sent anywhere.

**Bounces after sending** (2.3.0, off unless you switch it on) connects to the mailbox
server you enter, over IMAP, with the username and password you give it, once an
hour. It opens the mailbox read-only and downloads only the messages that look like
bounce reports, to read them on your server. Nothing is sent to that server except
the sign-in and the read-only commands, and nothing else is contacted. That server
is the one your email is already hosted on, so its own terms apply.

The plugin includes ready-made host and port presets for a number of well-known 
providers purely so you do not have to look them up. A preset is only a shortcut
for filling in the form; selecting one does not contact anybody, and no provider
is contacted unless you have entered credentials for it and WordPress sends an email.

Because you choose the provider, you are agreeing to that provider’s terms. The 
presets included cover, among others:

 * Google Gmail / Workspace — [terms](https://policies.google.com/terms), [privacy](https://policies.google.com/privacy)
 * Microsoft Outlook / Microsoft 365 — [terms](https://www.microsoft.com/en/servicesagreement/),
   [privacy](https://privacy.microsoft.com/en-us/privacystatement)
 * Amazon SES — [terms](https://aws.amazon.com/service-terms/), [privacy](https://aws.amazon.com/privacy/)
 * SendGrid (Twilio) — [terms](https://www.twilio.com/en-us/legal/tos), [privacy](https://www.twilio.com/en-us/legal/privacy)
 * Mailgun — [terms](https://www.mailgun.com/legal/terms/), [privacy](https://www.mailgun.com/legal/privacy-policy/)
 * Postmark — [terms](https://postmarkapp.com/terms-of-service), [privacy](https://postmarkapp.com/privacy-policy)
 * Brevo — [terms](https://www.brevo.com/legal/termsofuse/), [privacy](https://www.brevo.com/legal/privacypolicy/)
 * Zoho Mail — [terms](https://www.zoho.com/terms.html), [privacy](https://www.zoho.com/privacy.html)

If you use your own mail server, or a provider not listed above, then that server
is the only third party involved and its own terms apply.

### Support

Email: support@dadsfam.co.za
 Website: https://www.dadsfam.co.za

## Tangkapan Layar

[⌊DadsFam AI answers "is my email working?" first, with your email health score,
what went out and what failed, and how much it may do by itself.⌉⌊DadsFam AI answers"
is my email working?" first, with your email health score, what went out and what
failed, and how much it may do by itself.⌉[

DadsFam AI answers “is my email working?” first, with your email health score, what
went out and what failed, and how much it may do by itself.

[⌊New in 2.3: when email breaks, it knows what to do. Emails that failed while the
mail server refused them are offered again once it works, a flood from a hijacked
form is held instead of sent, and bounces read from your own mailbox are explained.⌉⌊
New in 2.3: when email breaks, it knows what to do. Emails that failed while the
mail server refused them are offered again once it works, a flood from a hijacked
form is held instead of sent, and bounces read from your own mailbox are explained
.⌉[

New in 2.3: when email breaks, it knows what to do. Emails that failed while the
mail server refused them are offered again once it works, a flood from a hijacked
form is held instead of sent, and bounces read from your own mailbox are explained.

[⌊Ask anything about your email. Answered from your own log, with what the mail 
server said, what to do next and the button to do it.⌉⌊Ask anything about your email.
Answered from your own log, with what the mail server said, what to do next and 
the button to do it.⌉[

Ask anything about your email. Answered from your own log, with what the mail server
said, what to do next and the button to do it.

[⌊The Doctor checks everything every day, a real sign-in to your mail server included,
and every finding comes with its fix.⌉⌊The Doctor checks everything every day, a
real sign-in to your mail server included, and every finding comes with its fix.⌉[

The Doctor checks everything every day, a real sign-in to your mail server included,
and every finding comes with its fix.

[⌊What your site sends, learned from your own log (older emails included), and the
diary: every change DadsFam AI makes, with an Undo.⌉⌊What your site sends, learned
from your own log (older emails included), and the diary: every change DadsFam AI
makes, with an Undo.⌉[

What your site sends, learned from your own log (older emails included), and the
diary: every change DadsFam AI makes, with an Undo.

[⌊The dashboard widget: your email health at a glance, and answers without leaving
the dashboard.⌉⌊The dashboard widget: your email health at a glance, and answers
without leaving the dashboard.⌉[

The dashboard widget: your email health at a glance, and answers without leaving
the dashboard.

[⌊Pick your provider and the host, port and encryption fill themselves in. Your 
password is encrypted before it is stored.⌉⌊Pick your provider and the host, port
and encryption fill themselves in. Your password is encrypted before it is stored
.⌉[

Pick your provider and the host, port and encryption fill themselves in. Your password
is encrypted before it is stored.

[⌊An email health score out of 100, with SPF, DKIM and DMARC checked against live
DNS and each item scored separately so you know what to fix.⌉⌊An email health score
out of 100, with SPF, DKIM and DMARC checked against live DNS and each item scored
separately so you know what to fix.⌉[

An email health score out of 100, with SPF, DKIM and DMARC checked against live 
DNS and each item scored separately so you know what to fix.

[⌊Every email logged, searchable by recipient or subject, with the reason in plain
words when something failed.⌉⌊Every email logged, searchable by recipient or subject,
with the reason in plain words when something failed.⌉[

Every email logged, searchable by recipient or subject, with the reason in plain
words when something failed.

[⌊Totals, a seven-day trend and a breakdown by connection, so a drop in delivery
shows up as a shape on a chart.⌉⌊Totals, a seven-day trend and a breakdown by connection,
so a drop in delivery shows up as a shape on a chart.⌉[

Totals, a seven-day trend and a breakdown by connection, so a drop in delivery shows
up as a shape on a chart.

## Instalasi

 1. Upload the `dadsfam-email-smtp` folder to `/wp-content/plugins/`, or install through**
    Plugins  Add New**.
 2. Activate the plugin.
 3. Go to **DadsFam SMTP  Settings** and choose your provider.
 4. Enter your credentials and save.
 5. Go to **DadsFam SMTP  Test & Tools** and send a test email.

## Tanya Jawab

### Gmail keeps rejecting my password.

Gmail will not accept your normal account password over SMTP. Turn on 2-Step Verification,
then generate an App Password under Google Account  Security  App passwords, and
use that instead.

### My host blocks port 25.

Almost all do. Use port 587 with TLS, or 465 with SSL. If neither connects, use 
the connection test to confirm whether the problem is the network or your credentials,
then ask your host whether outbound SMTP is permitted.

### Are my SMTP passwords safe?

Passwords are encrypted with AES-256-GCM using a key derived from your site’s own`
AUTH_KEY`, so a stolen database dump does not expose them. They are also never included
in a configuration export.

### Will this work with WooCommerce?

Yes. The plugin runs after WooCommerce and overrides its From address, so store 
emails send from your configured, authenticated address. There is a diagnostics 
screen for testing each WooCommerce email type.

### Does logging slow my site down?

No. Each send writes one indexed row, and the log list never loads message bodies.
Old entries are purged automatically on a daily schedule according to your retention
setting.

### Replies to my contact form go to me as well as the visitor.

Update to 2.1.7 or later. The Default Reply-To setting is only used for emails that
do not say who to reply to, so a contact form or enquiry form that sets the visitor
as the Reply-To keeps it, and your reply goes to them alone.

### Does DadsFam AI send my emails or data to OpenAI, ChatGPT or anyone else?

No. DadsFam AI runs inside your own WordPress. It reads your own email log and settings,
understands questions with a language engine built into the plugin, and does its
sums on your own server. There is no outside AI service and no API key. The only
connections it makes are to your own mail server (to test the sign-in, without sending
anything) and to public DNS (to read your SPF, DKIM and DMARC records).

### What does Autopilot change by itself?

Only things it can prove: a mail server connection that has just signed in with 
your own username and password, the DKIM selector your domain actually publishes,
the From address your mail server accepts, a rebuilt log table, and lost scheduled
tasks. It never changes your password and never switches staging mode off. It keeps
watching every change and puts it back if things get worse, and if you undo or turn
down one kind of fix twice in a month, it goes back to asking you first. Everything
is in the diary with an Undo.

Two more things it does only after you switch them on under “What you have taught
me”: sending the emails that failed while email was broken, once each, after a fix
has worked; and holding a flood of one kind of email. Both are off on every site
until you choose otherwise.

### Does DadsFam AI read my mailbox?

Only if you switch on “Bounces after sending” and give it the mailbox’s details.
It then signs in over IMAP once an hour, opens the mailbox read-only, reads only
the messages that look like bounces, and never marks, moves or deletes anything.
The mailbox password is encrypted like your sending password, and you can use the
same one. Microsoft 365 no longer allows password sign-in to IMAP for most mailboxes,
so this does not work there.

### How does it know what my older emails were?

Three ways, most certain first: the wording WordPress and WooCommerce use for their
own emails; the emails your site has sent since 2.2, which record who sent them,
so an older email with the same kind of subject is the same kind of email; and, 
for what is left, the words of the subject in your installed plugins’ and theme’s
own files. It only labels what it is sure of, never touches the emails themselves,
and the diary has an Undo that puts every label back. It all happens on your server.

### How do I switch DadsFam AI off?

Choose “Paused” on the DadsFam AI screen and it stops checking and changing anything.
To remove it completely, add `define( 'DFSMTP_BRAIN_OFF', true );` to wp-config.
php. Sending, logging and every other feature carry on exactly as before.

### Which languages does “Ask” understand?

English, typing mistakes and all. The rest of the plugin, DadsFam AI’s answers included,
can be translated.

### How do I stop a staging site emailing real customers?

Turn on blocking mode under Settings  Delivery Controls. Nothing is delivered, but
every attempt is still logged so you can confirm what the site would have sent.

## Ulasan

Belum ada ulasan untuk plugin ini.

## Kontributor & Pengembang

“DadsFam SMTP” adalah perangkat lunak open source. Berikut ini mereka yang sudah
berkontribusi pada plugin ini.

Kontributor

 *   [ dadsfam ](https://profiles.wordpress.org/dadsfam/)

[Terjemahkan “DadsFam SMTP” dalam bahasa Anda.](https://translate.wordpress.org/projects/wp-plugins/dadsfam-email-smtp)

### Tertarik mengembangkan?

[Lihat kode](https://plugins.trac.wordpress.org/browser/dadsfam-email-smtp/), periksa
[repositori SVN ](https://plugins.svn.wordpress.org/dadsfam-email-smtp/), atau mendaftar
ke [log pengembangan](https://plugins.trac.wordpress.org/log/dadsfam-email-smtp/)
melalui [RSS](https://plugins.trac.wordpress.org/log/dadsfam-email-smtp/?limit=100&mode=stop_on_copy&format=rss).

## Log Perubahan

#### 2.3.0

 * **New: DadsFam AI takes its first full look the moment you open it.** Before,
   the health score showed an assumed number until the first daily check had run;
   now the check runs straight away and the score is measured.
 * New: it works out what the emails already in your log were. Emails logged before
   2.2 did not record who sent them, so they all showed as “Other emails”. It recognises
   WordPress’s and WooCommerce’s own emails by their wording, learns the rest from
   the emails your site sends now, and looks up what is left in the code of the 
   plugins installed on your site (on your server; nothing is sent anywhere). It
   only labels the log: only what it is sure of, one Undo in the diary puts every
   label back, and “Recognising older emails” under What you have taught me switches
   it off.
 * New: it remembers what went wrong and what fixed it. The next time the same failure
   happens, it says when it happened before and what made it work then (“changing
   the password fixed it”, “it cleared by itself after 40 minutes”), on the warning
   and in Ask.
 * New: once email works again, the emails that failed while it was broken are offered
   with one tap (“3 emails failed earlier and were never sent”), and go out once
   each. On Autopilot it can send them by itself if you switch “Sending emails again
   once a fix has worked” on (it is off). It never resends password resets, emails
   to addresses that do not exist, anything older than a day, or anything PRO’s 
   own retry is already handling.
 * New: flood guard. When one form or plugin suddenly sends far more email than 
   your site ever has (a contact form found by spammers, a plugin stuck in a loop),
   it can hold just that kind of email: each one kept in the log, not sent, while
   everything else goes out as normal. You get one email about it, then look at 
   them and send them all or delete them; each keeps its own headers, so it goes
   exactly as it was meant. Order emails (anything from WooCommerce), password resets
   and emails with attachments are never held, nothing is held while the email log
   is off or DadsFam AI is paused, and a hold ends by itself once that kind of email
   is back to its usual pace. Held emails wait until you send or delete them: the
   log’s clean-up and Clear all leave them alone. On Autopilot only, and only once
   you switch “Holding a flood of emails” on and DadsFam AI has learned your site’s
   rhythm; in “Ask me first” the warning has a “Hold these emails” button.
 * New: bounces after sending (optional, off until you switch it on). It reads the
   bounce messages in your mailbox over IMAP, read-only, marks the emails that came
   back as Bounced with the reason in plain words, and offers to stop emailing addresses
   that do not exist. It understands standard delivery reports (Gmail, Microsoft
   and most servers) and the plain-text ones cPanel’s Exim and qmail send.
 * New: it watches your DNS. When your SPF, DKIM, DMARC or MX records change, the
   diary says what changed, and a check that starts failing says what the record
   used to be. A record that seems to vanish once is checked again before it is 
   believed, so a slow DNS answer is not reported as a deleted record.
 * New: a DMARC policy of p=none is now shown as advice rather than a plain pass:
   it only watches, so anyone can still send as your domain. When SPF and DKIM both
   pass it gives the record to move to.
 * New: every email sent records its Message-ID, which is how a bounce is matched
   to the email it is about.
 * Improved: plugins and themes are named by their own name in DadsFam AI (“DadsFam
   Login Security”), and the weekly letter shows bounces and everything DadsFam 
   AI did by itself.
 * Improved: each problem is told once. A flood that is being held is not told again
   as a jump in all email, and the failures from a mail-server problem that is over
   are told as the emails to send again, not also as “more failures than usual”.
   The answer at the top no longer repeats the first warning word for word: it says
   how many things need you, and they are just below.
 * Improved: kinds of email read naturally in warnings (“a flood of contact form
   emails (Contact Form 7)”, “no emails from Wordfence for 5 hours”), and plugin
   names keep their capital letters.
 * Fixed: a big flood could hide itself. The hourly picture measured this hour against
   a rhythm that included this hour, so late in the hour a flood on a quiet site
   could look almost usual. It is now measured against the hours before it.
 * Fixed: the email log showed the database’s clock, often UTC, instead of your 
   site’s time. The log list and View now show your site’s own time zone.
 * Fixed: deactivating or deleting the plugin left its one-off checks in WordPress’s
   list of scheduled tasks. They did nothing, but they are now removed too.
 * Fixed: sending an email again (a failed one, or one held back) sent it as HTML
   without its Cc or Bcc. It now goes as it was meant, with its own headers, and
   plain text stays plain text. The result is written on that email’s own log entry,
   so a send that fails again never leaves a second copy to go out later, and a 
   held email that cannot go yet stays held, ready to send with the rest.
 * Fixed: when a mail server refused one address on an email to several people, 
   every address on it was treated as not existing. Only the address the server 
   named is offered for “Stop sending to them” now, and a bounce for someone who
   was not a recipient (a Bcc copy, a forward) never marks the email or its recipient.
 * Improved: WooCommerce’s plain-text emails are recognised by kind (order receipts,
   new order alerts) like its HTML ones.
 * Fixed: an email held back by staging mode and sent later (from the log, or by
   asking “send the held emails”) went out with “[BLOCKED]” in front of its subject.
   It now goes out with its real subject, and its log entry says Released, so it
   is never offered again.
 * Fixed: the reason an email was blocked or suppressed was stored where its Message-
   ID belongs, so the log did not show it. It shows now, and older entries are corrected
   once when you update.
 * Fixed: the Doctor’s “emails failed this week” check rounded the share that went
   out up, so 543 of 544 read as 100%. It reads 99.8% now, like every other rate.
 * Fixed: emails sent by a must-use plugin showed as “Other emails”.
 * Fixed: the health score briefly counted up from a negative number as the page
   opened.
 * Fixed: two Plugin Check reports: the direct-access guard now sits right under
   the plugin header, and table names are escaped in every query.
 * Changed: a few messages still called DadsFam AI “the Brain”; they now use its
   name.

#### 2.2.0

 * **New: DadsFam AI.** A new first screen, DadsFam SMTP  DadsFam AI, answers “is
   my email working?” in one sentence, with a health score out of 100. When something
   is wrong it says what, why, and what to do.
 * New: every failed email is read the way the mail server meant it, in plain English,
   with the steps to fix it and whether sending again can work. It knows how Gmail,
   Microsoft 365, SendGrid, Amazon SES, Mailgun, Brevo, Postmark, Zoho, Yahoo and
   cPanel hosting word their refusals.
 * New: the Doctor checks everything every day, a real sign-in to your mail server(
   nothing is sent), its certificate, SPF evaluated against the way your site really
   sends, DKIM found by itself, DMARC, MX, staging mode, other mail plugins, scheduled
   tasks and the log table, and gives you the exact DNS record to add when one is
   missing.
 * New: DadsFam AI learns what your site sends, how often and when, and warns you
   when a kind of email goes quiet for longer than usual, floods (a form being used
   for spam), fails more than is normal for your site, or your mail server slows
   down.
 * New: fixes, proven before anything changes. “Ask me first” prepares them for 
   you to apply; Autopilot applies the safe ones by itself, keeps watching, and 
   puts a change back if it makes things worse. Every change is in the diary with
   an Undo, and it learns from what you undo or turn down.
 * New: Ask. Type a question about your email the way you would ask a person (“did
   sarah@example.com get her receipt?”, “did order 1234 go out?”, “why did emails
   fail this week?”, “what does 535 mean?”, “stop emailing bob@example.com”) and
   get the answer from your own log, with buttons to act on it. It forgives typing
   mistakes, remembers what you just asked about, and learns your way of asking.
 * New: the dashboard widget answers “is my email working?” and takes questions.
   One notice appears on the Dashboard and Plugins screens, only while email is 
   actually failing, and it can be hidden for a day.
 * New: an optional weekly letter every Monday: what worked, what failed and why,
   what DadsFam AI fixed and what needs you.
 * New: twelve more AI abilities (brain-status, ask, run-doctor, explain-error, 
   list-fixes, apply-fix, undo-change, set-brain-mode, get-diary, get-streams, find-
   email, resend-email), so an assistant connected through an MCP plugin can find
   out why email is failing and fix it.
 * New: each logged email records which plugin or part of WordPress sent it, what
   kind of email it is, how long the hand-over took and what went wrong in a word,
   so the log can be read by kind (order receipts, password resets, each contact
   form).
 * Fixed: when a mail server turned the sign-in down, the log only said “Could not
   authenticate.” because the mail program dropped the server’s own words. The log
   now keeps them (“535 5.7.8 Username and Password not accepted”).
 * Fixed: an AI assistant changing one setting through the update-settings or import-
   settings ability reset every PRO setting (retries, tracking, the backup server).
   Only what is asked for changes now.
 * Fixed: a test email that failed said only “Check your SMTP credentials.” It now
   shows what the mail server said and what it means.
 * Fixed: every DadsFam SMTP screen was 20 pixels wider than the window, so the 
   page could scroll sideways.
 * Fixed: success rates were rounded to whole numbers, so 543 of 544 delivered showed
   as 100%. They now read 99.8%, and never 100% while something failed (Analytics,
   the health score and the dashboard widget).
 * Fixed: the Settings page said passwords are stored with AES-256-CBC. They have
   been stored with AES-256-GCM since 2.0.4; only the label was out of date.
 * Changed: the email log says why a failed email failed in plain words (“That email
   address does not exist”); the mail server’s own words are a hover away and under
   View. The Connection column shows the provider’s name (“cPanel”) instead of its
   internal key.
 * Changed: the DadsFam SMTP menu opens on DadsFam AI. Settings, Logs and everything
   else are where they were. With DadsFam AI switched off, the menu opens on Settings
   as before.

#### 2.1.7

 * Fixed: the Reply-To setting was added to every email, even one that already said
   who to reply to. Mail programs then replied to both addresses, so when someone
   answered a contact-form enquiry, the site owner was copied in on a private conversation.
   The setting is now a default: it is only used when an email has no Reply-To of
   its own. Contact forms, enquiry forms and WooCommerce emails keep theirs.
 * Fixed: the email log showed the Reply-To setting rather than the Reply-To the
   email actually went out with. It now records the real one.
 * Fixed: resending an email from the log, and PRO’s automatic retry, keep the email’s
   original Reply-To.
 * Fixed: after one email failed, the next email sent at the same moment went out
   over the same broken connection and failed too. That included the “delivery failure”
   alert, PRO’s backup server (the email went back to the main server instead) and
   every PRO retry after the first. Each email now starts a fresh connection after
   a failure.
 * Fixed: emails held back on purpose (by staging mode, the suppression list or 
   PRO’s hourly limit) were logged as “failed”, so PRO’s automatic retry could send
   them anyway. An email held back on a staging site could go out once blocking 
   was switched off, and a deferred email could go out twice. They now have their
   own status (Blocked, Suppressed or Deferred), are never retried and no longer
   count as failures. Existing log entries are corrected once when you update.
 * Fixed: opening the Settings screen put the provider’s default port and encryption
   into the form, so saving any other setting (the From name, say) could quietly
   change how the site connects to its mail server. The form now shows what is saved,
   and only fills in a provider’s defaults when you choose a provider.
 * Changed: the Reply-To field is now called “Default Reply-To email” and says it
   is only used when an email has none of its own.

#### 2.1.6

 * Fixed: opening an email in the log could show an empty white box instead of the
   email, so you had to reload the page, sometimes many times, before it showed.
   The email is now drawn fresh each time you open one, and it shows every time.
 * Fixed: the dark background behind an open email covered only part of the screen.
 * Fixed: with PRO’s open tracking on, looking at an email in the log counted as
   the person opening it, so every look pushed the open figures up. Looking no longer
   counts.
 * Improved: the window opens the moment you click View and says it is loading. 
   If the email cannot be loaded, because the page has been open too long, your 
   login has timed out or the connection dropped, it says so in plain words with
   a button to try again or reload the page. Before, nothing happened at all.
 * Improved: links in the email open in a new tab, plain-text emails keep their 
   line breaks, and the Escape key closes the window.
 * Improved: the What’s New screen shows the newest release at the top, PRO releases
   included.

#### 2.1.5

 * Fixed: with PRO’s automatic retry switched on, one failed email could turn into
   dozens. Each retry was logged as a brand-new email, that copy failed too and 
   was retried in its turn, and every failure sent you another “delivery failure”
   alert. A retry now updates the email’s original log entry, so it is tried the
   number of times you set and then it stops.
 * Fixed: an email with no recipient address, such as an invoice for an order with
   no email on it, was queued for retry even though no retry could ever deliver 
   it. It is now logged once, you get one alert that says there was nobody to send
   it to, and it is never retried.
 * Fixed: resending a failed email from the log now updates that entry, so an email
   you have already resent by hand can never be sent a second time by the retry 
   job.
 * Changed: the Retries column in the email log shows a dash for an email that will
   not be retried.

#### 2.1.4

 * Tidied: numbers read from the settings forms and the log screen are now cleaned
   exactly the way WordPress.org asks. Nothing changes in how the plugin works.
 * Added: a translation template (languages/dadsfam-email-smtp.pot), so the plugin
   can be translated.

#### 2.1.3

 * Fixed: emails another plugin has stopped now stay stopped. If another plugin 
   had already blocked an email (for example a “test mode” switch on a site that
   is not live yet), DadsFam SMTP could still send it whenever its own blocking 
   mode was off. It now always respects that decision. Nothing changes for normal
   sending.
 * Tidied: removed an old translation-loading call. WordPress has loaded plugin 
   translations by itself since version 4.6.

#### 2.1.2

 * Changed: the PRO note in the description now states the actual arrangement. There
   are two versions and one price — R500 once off, roughly $35, per plugin. No subscription,
   no yearly renewal, no expiry date. Nothing about the free plugin has changed;
   it was never crippled and still is not.

#### 2.1.1

 * Added screenshots to the plugin page, so you can see the settings, the deliverability
   score, the email log and the rest before installing. No change to the plugin 
   itself.

#### 2.1.0

 * **More of the plugin can now be run by an AI assistant.** Reading settings, stats
   and deliverability already worked. What was missing was everything you actually
   need when mail goes wrong, so this adds it.
 * Added: open a single log entry in full — who it went to, which provider carried
   it, and the exact error the server gave back. The stored message body and raw
   headers are deliberately never returned; that is the content of somebody’s email
   and it has no business in an assistant’s transcript.
 * Added: list the failed emails still waiting to be retried, with the error that
   stopped each one. Retrying itself is a Pro feature, but seeing what failed and
   why is free.
 * Added: export the mail configuration from one site and apply it to another, which
   makes setting up a row of sites the same way a single step. No password is ever
   included, so nothing sensitive travels between sites — each one still needs its
   own credential set before it can send.
 * Added: a single support report gathering versions, the current configuration,
   the SPF/DKIM/DMARC checks and recent sending statistics, so reporting a problem
   no longer means collecting four things by hand.
 * Tested up to WordPress 7.1.

#### 2.0.10

 * Packaging: trimmed the plugin tags to the five WordPress.org allows. The extra“
   ai” and “mcp” tags were being ignored on import, so they have been removed. No
   functional change.

#### 2.0.9

 * Added: AI assistant support. If you use an MCP plugin such as WPVibe to connect
   Claude, ChatGPT or another AI agent to your site, it can now read your SMTP stats,
   logs and settings, check deliverability (SPF/DKIM/DMARC), send a test email and
   change your configuration for you — all through the new WordPress Abilities API(
   WordPress 6.9+).
 * Every AI action requires administrator access, and your SMTP password is never
   exposed to the assistant.
 * On WordPress versions without the Abilities API, nothing changes — the plugin
   works exactly as before.
 * No changes to how the plugin sends, logs or tests email.

#### 2.0.7

 * Added: a plain-English “A word about PRO” note in the readme — what stays free,
   why the optional add-on exists, and what it does. No features were moved behind
   a paywall.
 * No changes to how the plugin sends, logs or tests email.

#### 2.0.6

 * Changed: uninstall now removes only this plugin’s own data, addressed by exact
   name — its three options, its scheduled event and its log table — instead of 
   sweeping the options table for anything sharing the “dfsmtp_” prefix. Data belonging
   to a separate add-on that happens to use the same prefix is no longer removed;
   each plugin cleans up only what it owns, and the optional PRO add-on removes 
   its own data through its own uninstall routine.
 * Changed: uninstall now runs its cleanup on every site of a multisite network 
   rather than only the current one, so nothing is left behind on the other sites.
   The per-site “keep data on uninstall” preference is still honoured for each site.

#### 2.0.5

 * Security: an imported configuration file is now cleaned key by key against a 
   list of the settings this plugin actually owns, with each value checked for what
   that setting is allowed to contain. Decoding a file is not the same as trusting
   it, and an edited export can no longer introduce settings the plugin does not
   own.
 * Added: an External services section to this readme, setting out exactly what 
   is sent to your SMTP provider, when, and where — along with the terms and privacy
   policies of the providers there are presets for.
 * Fixed: the plugin header pointed at a page that did not exist.
 * Changed: the text domain now matches the plugin slug, so the community translation
   tools can pick the plugin up.

#### 2.0.4

 * Security: stored SMTP passwords now use authenticated AES-256-GCM instead of 
   AES-256-CBC, so a tampered value is detected rather than silently decrypted into
   something else. Passwords saved by earlier versions continue to work and are 
   read transparently.
 * Security: removed the fallback that stored a password as plain text or base64
   if encryption failed. If a server genuinely cannot encrypt, the save is refused
   with a clear message instead of quietly saving an unprotected password.
 * Changed: uninstall now removes everything under this plugin’s own option, transient
   and scheduled-event prefix generically, rather than listing add-on option names.
 * Changed: tightened the inline justifications on the direct database calls used
   during uninstall and on the raw socket used by the connection test.

#### 2.0.3

 * Fixed: WooCommerce email types were identified by searching the subject line 
   for keywords, so any email whose subject contained a word like “Completed” or“
   Invoice” was logged as a WooCommerce order email. The type now comes from WooCommerce’s
   own email object and is only recorded when WooCommerce actually sent the email.
 * Fixed: failed sends did not record the WooCommerce email type, so a failed order
   email could not be told apart from any other failure in the log.

#### 2.0.2

 * Version number aligned with the separate PRO add-on. No functional change to 
   this plugin.

#### 2.0.1

 * Fixed: the SMTP connection tester used an implicitly nullable parameter, which
   is deprecated in PHP 8.4 and produced a notice on newer hosts.
 * Fixed: CSV export now passes the escape argument to fputcsv() explicitly. PHP
   8.4 deprecates relying on the default, and the value used produces RFC 4180 output
   that spreadsheet software reads correctly.
 * Verified compatible with PHP 8.0 through 8.4 and with WordPress 7.0.

#### 2.0.0

 * Fixed: a failed delivery could trigger an unbounded chain of failure-alert emails,
   exhausting PHP memory and overloading the mail server. The alert path is now 
   guarded against re-entry.
 * Fixed: the SMTP connection test now terminates commands with CRLF as RFC 5321
   requires, so strict servers such as Microsoft 365 no longer hang or reject the
   handshake.
 * Fixed: the suppression list now matches whole addresses and domains rather than
   loose substrings, so a short entry can no longer block unrelated recipients.
 * Fixed: uninstall now removes every option the plugin creates, including the log
   table version marker.
 * Fixed: the log table is now created with all columns present rather than relying
   on a later migration step.
 * Changed: email logging is unlimited on every site, with retention controlled 
   by a “keep logs for N days” setting instead of a fixed entry cap.
 * Changed: CSV export and the full email body viewer are available on every site.
 * Changed: the plugin no longer overrides the WordPress core “weekly” cron schedule.
 * Changed: admin styles are served from an enqueued stylesheet instead of an inline
   style block.
 * New: documented hook API so add-ons can extend the send pipeline and admin screens.
 * Upgrading from 1.6.x preserves all settings and log entries.

#### 1.6.3

 * Routing rules with an empty match value are skipped instead of capturing every
   email.
 * WooCommerce email detection moved to a hook-based flag consumed by a single outgoing
   email.
 * The log list view no longer selects the body column, preventing memory exhaustion
   on large logs.

#### 1.5.0

 * New email health score combining DNS authentication, configuration and send history.
 * New dashboard widget.

#### 1.4.0

 * Configuration backup and migrate as JSON.
 * Guided first-run setup.

#### 1.2.0

 * Blocking mode for staging sites.
 * Suppression list.
 * SPF, DKIM, DMARC and MX deliverability checker.

#### 1.0.0

 * First release.

## Meta

 *  Versi **2.3.0**
 *  Diperbarui **1 hari yang lalu**
 *  Instalasi Aktif **20+**
 *  Versi WordPress ** 6.0 atau yang terbaru **
 *  Diuji hingga **7.1.3**
 *  Versi PHP ** 8.0 atau yang terbaru **
 *  Bahasa
 * [English (US)](https://wordpress.org/plugins/dadsfam-email-smtp/)
 * Tag
 * [email](https://id.wordpress.org/plugins/tags/email/)[email log](https://id.wordpress.org/plugins/tags/email-log/)
   [mailer](https://id.wordpress.org/plugins/tags/mailer/)[smtp](https://id.wordpress.org/plugins/tags/smtp/)
   [woocommerce](https://id.wordpress.org/plugins/tags/woocommerce/)
 *  [Tampilan lanjut](https://id.wordpress.org/plugins/dadsfam-email-smtp/advanced/)

## Rating

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/dadsfam-email-smtp/reviews/#new-post)

[Lihat semua ulasan](https://wordpress.org/support/plugin/dadsfam-email-smtp/reviews/)

## Kontributor

 *   [ dadsfam ](https://profiles.wordpress.org/dadsfam/)

## Bantuan

Ada yang ingin dikatakan? Butuh bantuan?

 [Lihat forum bantuan](https://wordpress.org/support/plugin/dadsfam-email-smtp/)