=== SSF SMTP Mailer – Email Setup, Sender Settings & Test Emails ===
Contributors: ssfllc
Tags: smtp, email, sender, test email, notifications
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 8.1
Stable tag: 0.1.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Configure SMTP sending, choose sender details and check a test email with a guided, privacy-conscious WordPress setup.

== Description ==

SSF SMTP Mailer helps administrators configure the SMTP transport already included in WordPress. Start with a clear setup checklist, save your sender and connection details, then send a test through the normal WordPress mail pipeline.

The Free plugin is fully functional without an SSF account, activation key or paid upgrade. It uses an SMTP service or relay that you arrange separately. That service may have its own charges and sending limits.

= A clear setup with a small local record =

* A four-step overview links directly to SMTP settings, sender settings and the test screen.
* Local checks explain missing settings, PHP encryption support and recognised conflicts with other SMTP plugins. They do not contact your provider or check DNS.
* STARTTLS, implicit SSL/TLS and trusted unauthenticated SMTP relays are supported. Username/password authentication requires encryption; TLS certificate verification remains enabled.
* Separate sender controls can apply your authorised address and name to WordPress emails while preserving Reply-To headers added by contact forms.
* Send one administrator-requested test to an address you control. The latest result is tied to a configuration fingerprint, so changed settings are identified as needing a fresh test.
* Passwords supplied through the form use authenticated encryption. Advanced users can set credentials in wp-config.php instead.
* Built-in help explains connection errors, authentication, sender approval and delivery checks. The screens work without JavaScript.

The plugin retains only the latest test time, outcome and configuration fingerprint. It does not keep a message-body archive, recipient history or SMTP transcript. A reported sending success is not proof of inbox delivery: check the recipient inbox and spam folder.

Works with messages sent using WordPress wp_mail(). It does not configure other applications or every hosting-server email service. Use one SMTP configuration plugin at a time. Conflict detection covers recognised plugins; custom code or other mail plugins can still affect delivery.

= External SMTP service and data =

The destination is the SMTP hostname you configure; no provider is bundled or selected automatically. When SMTP is enabled and WordPress sends mail, the chosen server receives the sending/recipient information, message content, attachments where present, relevant mail metadata and authentication credentials when authentication is enabled. Its terms, privacy practices, retention, costs and sending policies apply. Obtain your SMTP settings and the applicable terms from that provider before enabling sending.

There is no plugin telemetry, remote account registration, SSF-hosted sending service or automatic diagnostic upload. The overview checks only local configuration. A test email is sent only when an authorised administrator explicitly requests it.

== Installation ==

1. In WordPress, open Plugins > Add New Plugin > Upload Plugin and select the SSF SMTP Mailer ZIP. Install and activate it.
2. Open Settings > SSF SMTP Mailer. SMTP starts disabled; activation does not switch your mail routing.
3. In Sender settings, save an email address authorised by your SMTP provider and the sender name you want recipients to see.
4. In SMTP settings, enter the provider's exact host, port, encryption and credentials. You can save an incomplete draft while SMTP remains disabled.
5. Enable SMTP only after the connection and sender details are ready, then save.
6. Open Test email, send to an inbox you control and confirm receipt. Test a real contact form or site notification separately.

Use a staging site and keep a backup before changing a production site's mail setup. If you used the earlier SSF Mail Bridge demonstration build, deactivate it before enabling this plugin. Its settings are not copied automatically. The plugin does not alter DNS records, mailbox accounts or other active plugins.

== Frequently Asked Questions ==

= Which SMTP providers can I use? =

Use a provider that permits ordinary SMTP authentication with your account, a supported provider app password, or an approved unauthenticated relay. Enter its current connection details yourself. This release does not include OAuth sign-in, Gmail API, Microsoft Graph or provider-specific API integrations. An OAuth-only account needs a suitable separate integration. Provider names are informational and do not imply endorsement.

= Is everything in this package free? =

Yes. The SMTP setup, sender controls, local checks, test workflow and help included here are available without an SSF account or paid licence. Your independently chosen SMTP provider may charge for its own service.

= Why does the last test say that settings changed? =

A local HMAC fingerprint associates the latest outcome with the settings used for that test. Changing SMTP or sender details marks that result as old. Send a fresh test, then confirm actual receipt. The fingerprint is not a deliverability score or a history of your credentials.

= Where is my SMTP password stored? =

The saved password is encrypted in a non-autoloaded WordPress option using Sodium secretbox where available, otherwise OpenSSL AES-256-GCM. The key is derived from this site's WordPress security salts. Encryption protects against reading the password from the database alone; someone with both the database and salts can decrypt it. The password is never displayed back in the form. Changing salts or moving to different salts requires re-entering it. Protect your administration access and backups, and use HTTPS.

= Can credentials be managed outside the database? =

A server administrator can define the string constants SSFSMTP_SMTP_USERNAME and SSFSMTP_SMTP_PASSWORD in wp-config.php before WordPress loads. These take priority over the stored credentials and are not shown in the plugin form. Never include real credentials in screenshots or support requests.

= Does a successful test mean that all email works? =

No. It means WordPress reported acceptance for sending through the current mail pipeline. Other plugins or code can influence that pipeline. Confirm the message in the recipient inbox and test the actual form or notification you use. Inbox placement, SPF/DKIM/DMARC, provider approval, rate limits and hosting restrictions are outside this plugin's control.

= Can I keep the From address provided by each message? =

Yes. Uncheck Use this sender for all WordPress emails in Sender settings. The plugin then leaves each message's existing From and return-path values unchanged. With the option enabled, the saved sender is applied. Reply-To headers are preserved in either case; the provider may still impose its own sender policy.

= What happens if I deactivate or delete the plugin? =

Deactivation stops this plugin from configuring mail and retains its settings, saved password and latest test result. Deletion also retains those records by default. To remove them, enable and save the cleanup choice in SMTP settings before deleting the plugin. Temporary administrator notices and test throttles expire locally. In multisite, the cleanup choice is evaluated per site; this release does not provide a network-wide SMTP configuration screen.

= What is outside this release? =

Email-body logging, recipient history, queue/retry delivery, bulk marketing, DNS editing, provider APIs and OAuth are not included. The plugin does not guarantee delivery or inbox placement.

= Where can I get help? =

Use the Help & privacy tab or visit https://ssfllc.com/support/. Do not send passwords, authentication codes or other private credentials. Product information is at https://ssfllc.com/ssf-mail-bridge/.

== Screenshots ==

1. Guided overview with setup steps and local configuration checks.
2. SMTP connection settings with encrypted password storage and explicit activation.
3. Separate sender controls with Reply-To guidance.
4. Test-email screen with a configuration-aware latest result.
5. Built-in troubleshooting and privacy information.

== Changelog ==

= 0.1.0 =
* Initial Free release with guided SMTP setup, sender controls, local checks, configuration-aware test status and help.