=== Apifel SMTP Mailer ===
Contributors: apifel
Tags: smtp, email, mail, wp_mail, email log
Requires at least: 5.9
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Ultra-light SMTP mailer with a test email and a simple email log. Nothing extra.

== Description ==

Apifel SMTP Mailer sends all WordPress email through your own SMTP server. It does one job, stays out of the way, and adds nothing to your front end.

**Features**

* Provider presets: Gmail, Outlook, Zoho, Brevo, SendGrid, Mailgun, Amazon SES or any custom SMTP server
* TLS, SSL or no encryption, with or without authentication
* SMTP password stored encrypted (AES-256-GCM), or kept out of the database with a `wp-config.php` constant
* Test email with an SMTP debug transcript (usernames and passwords are hidden)
* Simple email log: recipient, subject, status and error. The email body is never stored
* Dashboard with success rate and a 7 or 30 day activity chart
* Automatic cleanup of old log entries (default 30 days, or keep forever, or turn logging off)
* Clean, responsive admin screen

**Built to be light**

* No CSS, JavaScript, fonts or database queries on your public pages
* Admin assets load only on the Apifel SMTP Mailer screen
* No external requests, no tracking, no ads, no upsells

**Privacy**

The email log stores recipient addresses and subjects, which can be personal data. Logs are deleted after 30 days by default, logging can be turned off, and all data can be removed on uninstall (Settings > Logs & data). Email bodies and passwords are never logged.

**Credits**

Icons are from the Lucide icon set (ISC licence), https://lucide.dev

== Installation ==

1. Upload the `apifel-smtp-mailer` folder to `/wp-content/plugins/`, or install the plugin from the Plugins screen.
2. Activate the plugin.
3. Go to **Apifel SMTP Mailer > Settings**, pick your provider (or enter your own server) and save.
4. Open **Test Email** and send a test message.

Optional `wp-config.php` constants:

`define( 'APIFEL_SMTP_PASS', 'your-password' );` keeps the password out of the database.
`define( 'APIFEL_SMTP_KEY', 'a-long-random-string' );` sets your own encryption key.

== Frequently Asked Questions ==

= Does it work with Gmail? =

Yes. Turn on 2-step verification in your Google account, create an App Password and use it as the SMTP password (host smtp.gmail.com, port 587, TLS).

= Does it work with Microsoft 365 / Outlook? =

Microsoft plans to turn off password-based SMTP sign-in by default for existing Microsoft 365 accounts from the end of December 2026. If sending fails, ask your administrator to enable SMTP AUTH for the mailbox, or use another provider. OAuth sign-in is not supported yet.

= The test email fails with a certificate error. =

Apifel SMTP Mailer always verifies the server certificate. Use the exact host name printed on your mail server's certificate (your host's support can tell you), or try the SSL/TLS option your provider documents.

= Authentication fails after I changed my WordPress security keys. =

The saved password is encrypted with a key derived from your WordPress salts. If the salts change, enter the password again and save. To avoid this, define `APIFEL_SMTP_PASS` in `wp-config.php`.

= Does it work on multisite? =

Yes. Network activation sets up every site, and each site has its own settings and log.

= Is the email body logged? =

No. Only recipient, subject, status and any error message.

== Screenshots ==

1. Dashboard with success rate and activity chart
2. Settings with provider presets
3. Test email with debug output
4. Email log with details drawer

== Changelog ==

= 1.0.0 =
* First release.

== Upgrade Notice ==

= 1.0.0 =
First release.
