| 开发者 | dadsfam |
|---|---|
| 更新时间 | 2026年8月15日 16:28 |
| PHP版本: | 8.0 及以上 |
| WordPress版本: | 7.0 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
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.
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
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.
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:
dadsfam-email-smtp folder to /wp-content/plugins/, or install through Plugins → Add New.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.
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.
Passwords are encrypted with AES-256-CBC 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.
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.
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.
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.