=== WP Mail SMTP by WPForms - The Most Popular SMTP and Email Log Plugin ===
Contributors: wpforms, jaredatch, smub, slaFFik
Tags: smtp, wp mail smtp, wordpress smtp, gmail smtp, sendgrid smtp, mailgun smtp, mail, mailer, phpmailer, wp_mail, email, mailgun, sengrid, gmail, sendinblue, wp smtp
Requires at least: 5.2
Tested up to: 6.0
Stable tag: 3.6.1
Requires PHP: 5.6.20
Make email delivery easy for WordPress. Connect with SMTP, Gmail, Outlook, SendGrid, Mailgun, Zoho, SES, and more. Rated #1 WordPress SMTP Email plugin.
== Description ==
### WordPress Mail SMTP Plugin
Having problems with your WordPress site not sending emails? You're not alone. Over 2 million websites use WP Mail SMTP to send their emails reliably.
Our goal is to make email deliverability easy and reliable. We want to ensure your emails reach the inbox.
WP Mail SMTP fixes your email deliverability by reconfiguring WordPress to use a proper SMTP provider when sending emails.
Best of all, our easy-to-use Setup Wizard and detailed documentation guide you through the process.
#### What is SMTP?
SMTP (Simple Mail Transfer Protocol) is an industry standard for sending emails. Proper SMTP configuration helps increase email deliverability by using authentication.
Popular email clients like Gmail, Yahoo, Office 365, and Zoho are in a constant battle with email spammers. One of the things they look at is if an email is originating from the location it claims to be originating from.
If the proper authentication isn't there, then emails either go in the SPAM folder or worst, don't get delivered at all.
This is a problem for a lot of WordPress sites because by default, WordPress uses the PHP mail function to send emails generated by WordPress or any contact form plugin like WPForms.
The issue is that most WordPress hosting companies don't have their servers properly configured for sending PHP emails.
The combination of two causes your WordPress emails to not get delivered.
#### How does WP Mail SMTP work?
WP Mail SMTP plugin easily resolves email delivery problems by improving and changing how your WordPress site sends email. We reconfigure the `wp_mail()` function to either use proper SMTP host credentials or leverage a built-in SMTP mail provider.
When using one of our built-in SMTP mail provider integrations (recommended), emails are sent using the provider's direct API. This means even if your web host is blocking SMTP ports, your emails still send successfully.
This helps you fix all WordPress not sending email issues.
WP Mail SMTP plugin includes many different SMTP setup options:
1. SendLayer (#1 Recommended)
2. SMTP.com (Recommended)
3. Sendinblue SMTP (Recommended)
4. Mailgun SMTP
5. SendGrid SMTP
6. Postmark SMTP
7. SparkPost SMTP
8. Gmail SMTP (Gmail, Google Workspace, G Suite)
9. Microsoft SMTP (Outlook.com and Office 365) [Pro]
10. Amazon SES SMTP [Pro]
11. Zoho Mail SMTP [Pro]
12. All Other SMTP
For most options, you can specify the "from name" and "email address" for outgoing emails.
Instead of having users use different SMTP plugins and workflows for different SMTP providers, we decided to bring it all in one. This is what makes WP Mail SMTP, the best SMTP solution for WordPress.
SendLayer is our #1 recommended transactional email service.
Its affordable pricing and simple setup make it the perfect choice for sending emails from WordPress. It also has open and click tracking, email logs, and email list management.
SendLayer is the best choice if you want a mailer that's reliable, fast, and easy to set up. You can send hundreds of emails for free when you sign up for a trial.
Read our SendLayer documentation for more details.
SMTP.com is a recommended transactional email service.
With over 22 years of email delivery expertise, SMTP.com has been around for almost as long as email itself. They are known among internet providers as one of the most reliable senders on the internet.
Their easy integration process lets you start sending emails in minutes and benefit from years of experience. SMTP.com provides users 50,000 free emails the first 30 days.
Read our SMTP.com documentation for more details.
#### Sendinblue SMTP
Sendinblue is a recommended transactional email service.
They serve 80,000+ growing companies around the world and send over 30 million emails each day.
Their email deliverability experts are constantly at work optimizing the reliability and speed of their SMTP infrastructure. Sendinblue provides users 300 free emails per day.
Read our Sendinblue documentation for more details.
#### Mailgun SMTP
Mailgun SMTP is a popular SMTP service provider that allows you to send large quantities of emails. They provide 5,000 free emails per month for 3 months.
WP Mail SMTP plugin offers a native integration with MailGun. All you have to do is connect your Mailgun account, and you will improve your email deliverability.
Read our Mailgun documentation for more details.
#### SendGrid SMTP
SendGrid has a free SMTP plan that you can use to send up to 100 emails per day. With our native SendGrid SMTP integration, you can easily and securely set up SendGrid SMTP on your WordPress site.
Read our SendGrid documentation for more details.
#### Postmark SMTP
Send emails securely using your Postmark account with our API integration. You can sign up for a free trial without a credit card, which allows you to send up to 100 emails per month.
Read our Postmark documentation for more details.
#### SparkPost SMTP
SparkPost is a transactional email provider that's trusted by big brands and small businesses. It sends more than 4 trillion emails each year and reports 99.9% uptime. You can get started with the free test account that lets you send up to 500 emails per month.
Read our SparkPost documentation for more details.
#### Gmail SMTP (Gmail, Google Workspace, G Suite)
Often bloggers and small business owners don't want to use third-party SMTP services. Well you can use your Gmail or Google Workspace (also known as G Suite/Google Apps) account for SMTP emails.
This allows you to use your professional email address and improve email deliverability.
Unlike other Gmail SMTP plugins, our Gmail SMTP option uses OAuth to authenticate your Google account, keeping your login information 100% secure.
Read our Gmail documentation for more details.
#### Microsoft SMTP (Outlook.com and Office 365)
Many businesses use Outlook.com or Microsoft 365 to power their email. Our Microsoft mailer integration allows you to use your existing Outlook.com or Microsoft 365 account to send emails from WordPress for better deliverability.
Read our Outlook and Microsoft 365 documentation for more details.
#### Amazon SES SMTP
Advanced or technical users can harness the power of Amazon AWS (Amazon Web Services) with the Amazon SES mailer. With this integration, you can send a high volume of emails at a very reasonable rate.
Read our Amazon SES documentation for more details.
#### Zoho Mail SMTP
Send emails using your personal or business Zoho Mail account, all while keeping your login credentials safe.
Read our Zoho Mail documentation for more details.
#### Other SMTP
WP Mail SMTP plugin also works with all major email services such as Gmail, Yahoo, Outlook, Microsoft Live, and any other email sending service that offers SMTP.
You can set the following options:
* Specify an SMTP host.
* Specify an SMTP port.
* Choose SSL / TLS encryption.
* Choose to use SMTP authentication or not.
* Specify an SMTP username and password.
To see recommended settings for the popular services as well as troubleshooting tips, check out our SMTP documentation.
#### One-Click Migration
Want to switch from your old SMTP plugin to WP Mail SMTP? We made it easy for you to migrate your SMTP settings in one click!
WP Mail SMTP will automatically detect your existing SMTP plugin (Easy WP SMTP, FluentSMTP, etc) when you run our easy Setup Wizard. Just click Import to copy your settings over.
Our one-click migration tool supports all of these plugins:
- Easy WP SMTP
- Post SMTP Mailer
- SMTP Mailer
- WP SMTP
### WP Mail SMTP PRO
In addition to native Microsoft, Amazon SES, and Zoho Mail integrations, WP Mail SMTP Pro provides access to many other powerful features and services.
Click here to purchase WP Mail SMTP Pro now!
#### Email Log
Email Logging lets you log and view all emails sent from your site. Email logs are helpful for storing emails for your records, auditing outgoing emails, and debugging during site development.
But that's just the beginning. Our powerful WordPress email logs unlock extra tools to help you measure email engagement and improve email deliverability:
#### Resend Emails
You resend any email or forward it to one or more email addresses, right from your email log. From the overview page, you can also resend multiple emails in bulk. This is an awesome way to resend emails that failed or forward important emails to an alternative email address.
#### Track Email Opens and Clicks
Wondering if an important email was actually opened, or if any links in the email were clicked? Our email log lets you view open and click tracking stats for your WordPress emails.
#### Store Email Attachments
WP Mail SMTP lets you store all of the email attachments that are sent from your WordPress site. That makes it easy to review an attachment or archive it locally.
#### Export Email Logs
Easily export your WordPress email logs to CSV, EML, or Excel. You can filter the email logs before you export and only download the data you need. This feature lets you easily create your own deliverability reports. You can also use the data in 3rd party dashboards to track deliverability along with your other website statistics.
#### Print Emails
Once you've activated email logging, any individual log file can be printed in an easy-to-read format. If you want to archive an email log digitally, it's easy to export it to a PDF document too.
#### Manage Multisite Email Logs Easily
WP Mail SMTP makes it easy for Network Admins to view and manage email logs for subsites. You can access all of your deliverability information from the Network Admin dashboard and quickly switch between subsites. That makes it easy to review email logging data for all subsites on one centralized page.
#### Email Alerts
Get instantly notified about failed emails! If your site's mailer or SMTP service stops sending your emails, you'll immediately receive a notification. Choose from several helpful alert methods, including:
- Email Notifications
- Slack Notifications
- SMS/Twilio Notifications
- Webhook Notifications
In combination with Email Logging and Email Resend, Email Alerts let you ensure that no important email will ever be lost.
#### Email Reports
Email reports make it easy to track deliverability and engagement at-a-glance. Your open and click-through rates are grouped by subject line, making it easy to review the performance of campaigns or notifications. The report also displays Sent and Failed emails each week so you spot any issues quickly. You'll also see an email report chart right in your WordPress dashboard.
#### Weekly Email Summary
Get statistics about WordPress emails sent directly into your inbox. Our weekly emails reveal how many emails are being sent from your WordPress site, and which ones are getting opens and clicks. The Summary also shows you deliverability statistics at-a-glance so you can spot any issues without logging into WordPress.
#### Manage WordPress Emails and Notifications
The Manage Notification feature gives you full control over which email notifications WordPress sends. This means you can disable different WordPress notification emails. Don't want to receive emails when new users are created? No problem, turn it off.
#### WordPress Multisite Network Settings
For users running a multisite network, our network settings provide a centralized location to easily configure your SMTP settings for all sites, saving you time.
### Expert Support
We provide limited support for the WP Mail SMTP plugin on the WordPress.org forums. Access to our world class one-on-one email support is available to WP Mail SMTP Pro users.
#### White Glove Setup
Our White Glove Setup service is a great option that anyone can benefit from. Whether you don't have the time or maybe you feel a bit in over your head - we've got you covered.
You can sit back and relax while we set up everything for you. White glove setup includes WP Mail SMTP plugin installation and setup, configuration adjustments to your DNS for proper email domain name verification, SMTP.com or Mailgun setup, and final testing to confirm everything is passing with flying colors.
The WP Mail SMTP team takes security very seriously. Not only does the plugin follow all security best practices, but we have several options available to ensure your site is safe and secure.
- Direct SMTP mailer integrations (recommended), such as SMTP.com, Sendinblue, Mailgun, SendGrid, Postmark and SparkPost, use the official provider APIs. This means you never enter your username or password in the plugin settings and these credentials are not stored in the database. Instead, we use tokens or API keys which are much more secure.
- When using Other SMTP mailer, we provide the option to insert your password in your `wp-config.php` file, so it's not visible in your WordPress settings or saved in the database.
WP Mail SMTP plugin was originally created by Callum Macdonald. It is now owned and maintained by the team behind WPForms - the best drag & drop form builder for WordPress.
You can try the free version of WPForms plugin to see why it's the best in the market.
### What's Next
If you like our WP Mail SMTP plugin, then consider checking out our other projects:
* OptinMonster - Get More Email Subscribers with the most popular conversion optimization plugin for WordPress.
* WPForms - #1 drag & drop online form builder for WordPress (trusted by 5 million sites).
* MonsterInsights - See the Stats that Matter and Grow Your Business with Confidence. Best Google Analytics Plugin for WordPress.
* SeedProd - Create beautiful landing pages with our powerful drag & drop landing page builder.
* RafflePress - Best WordPress giveaway and contest plugin to grow traffic and social followers.
* Smash Balloon - #1 social feeds plugin for WordPress - display social media content in WordPress without code.
* AIOSEO - the original WordPress SEO plugin to help you rank higher in search results (trusted by over 2 million sites).
* PushEngage - Connect with visitors after they leave your website with the leading web push notification plugin.
* TrustPulse - Add real-time social proof notifications to boost your store conversions by up to 15%.
* SearchWP - The most advanced WordPress search plugin. Customize your WordPress search algorithm, reorder search results, track search metrics, and everything you need to leverage search to grow your business.
* AffiliateWP - The #1 affiliate management plugin for WordPress. Easily create an affiliate program for your eCommerce store or membership site within minutes and start growing your sales with the power of referral marketing.
* WP Simple Pay - The #1 Stripe payments plugin for WordPress. Start accepting one-time and recurring payments on your WordPress site without setting up a shopping cart. No code required.
* Easy Digital Downloads - The best WordPress eCommerce plugin for selling digital downloads. Start selling eBooks, software, music, digital art, and more within minutes. Accept payments, manage subscriptions, advanced access control, and more.
* Sugar Calendar - A simple & powerful event calendar plugin for WordPress that comes with all the event management features including payments, scheduling, timezones, ticketing, recurring events, and more.
Visit WPBeginner to learn from our WordPress Tutorials and find out about other best WordPress plugins.
== Installation ==
1. Install WP Mail SMTP by WPForms either via the WordPress.org plugin repository or by uploading the files to your server. (See instructions on how to install a WordPress plugin)
2. Activate WP Mail SMTP by WPForms.
3. Navigate to the Settings area of WP Mail SMTP in the WordPress admin.
4. Choose your SMTP option (SMTP.com, Sendinblue, Mailgun SMTP, SendGrid SMTP, Postmark, SparkPost, Gmail SMTP, or Other SMTP) and follow the instructions to set it up.
5. Need more help? Get support with WP Mail SMTP PRO.
== Frequently Asked Questions ==
= Can I use this plugin to send email via Gmail, G Suite, Outlook.com, Office 365, Hotmail, Yahoo, or AOL SMTP? =
Yes! We have extensive documentation that covers setting up SMTP most popular email services.
Read our docs to see the correct SMTP settings for each service.
= Help! I need support or have an issue. =
Please read our support policy for more information.
Limited support is available for WP Mail SMTP users via WordPress.org support forums.
Email support and set up assistance is available to WP Mail SMTP Pro users.
= I found a bug, now what? =
If you've stumbled upon a bug, the best place to report it is in the WP Mail SMTP GitHub repository. GitHub is where the plugin is actively developed, and posting there will get your issue quickly seen by our developers (myself and Slava). Once posted, we'll review your bug report and triage the bug. When creating an issue, the more details you can add to your report, the faster the bug can be solved.
= Can you add feature x, y or z to the plugin? =
Short answer: maybe.
By all means please contact us to discuss features or options you'd like to see added to the plugin. We can't guarantee to add all of them, but we will consider all sensible requests. We can be contacted here:
== Screenshots ==
1. WP Mail SMTP Settings page
2. List of mailers
3. Other SMTP settings
4. Setup Wizard - Select your mailer
5. Setup Wizard - Example mailer settings
6. Email Test page
7. Email Log settings page (Pro)
8. Email Controls settings page (Pro)
9. Email Log archive page (Pro)
10. Email Log single page (Pro)
11. Email Reports - Email Log statistics grouped by email subject (Pro)
12. Email Log bulk Export (Pro)
13. Email Alerts - Get notified about failed emails (Pro)
== Changelog ==
= 3.6.1 - 2022-10-06 =
- Added: The `wp_mail` function call backtrace to the Debug Events if the "Debug Email Sending" option is enabled.
- Added: Plugin's DB tables re-creation process in WP Site Health.
- Added: Debug Events retention period setting.
- Changed: Updated the list of conflicting plugins (added Zoho Mail).
- Changed: Improved conflicting plugins' admin notices (display multiple at once)
- Changed: Switched to the WP Core function `is_email` for verifying email addresses.
- Changed: Improved the detection if `wp_mail` function is overwritten.
- Fixed: Gmail mailer not using the correct From Email Address in Domain Checker.
- Fixed: Setup Wizard steps navigation, when going backwards.
= 3.5.2 - 2022-08-17 =
- Fixed: The check if `wp_mail` function is overwritten on Windows servers.
= 3.5.1 - 2022-07-14 =
- Changed: Removed MailPoet from the list of conflicting plugins.
- Fixed: PHP warning for undefined variable when using the Default (none) mailer.
= 3.5.0 - 2022-07-14 =
- Added: Check if `wp_mail` function is overwritten.
- Added: DB table (`wpmailsmtp_tasks_meta`) cleanup after scheduled actions execution. Keeps DB size small.
- Changed: Updated the list of conflicting plugins (added Branda and MailPoet).
- Changed: Updated Action Scheduler library to 3.4.2.
- Fixed: SMTP.com mailer email content-encoding.
- Fixed: Dashboard widget graph when there is no email logs data.
- Fixed: Missing Sendinblue email body WP filter.
- Fixed: Chart.js library conflicts with other plugins.
= 3.4.0 - 2022-04-27 =
- Added: New transactional mailer: SendLayer integration.
- Changed: Improved Mailgun API error message extraction.
- Changed: Standardized error messages format and improved WP remote request errors extraction.
- Fixed: Lite plugin uninstall actions clearing plugin options while Pro version is active.
- Fixed: Hiding unrelated network admin notices on WP Mail SMTP pages.
= 3.3.0 - 2022-02-17 =
- IMPORTANT: Support for WordPress versions 5.1.x or lower has been discontinued. If you are using one of those versions, you MUST upgrade WordPress before installing or upgrading to WP Mail SMTP v3.3. Failure to do that will disable WP Mail SMTP functionality.
- Added: PHP 8.1 compatibility.
- Changed: Updated the list of conflicting plugins (added FluentSMTP and WP HTML Mail).
- Changed: Improved debug error message for the Other SMTP mailer in Debug Events.
- Changed: Updated Action Scheduler library to 3.4.0.
- Changed: Improved Action Scheduler performance.
- Fixed: PHP deprecated notices in Sendinblue library (PHP 7.4+).
- Fixed: DB tables row in Site Health Info section is now private.
- Fixed: Debug Events' screen options visible on general Tools page.
- Fixed: Screen Options right alignment.
= 3.2.1 - 2021-11-17 =
- Fixed: PHP 8 compatibility when existing Gmail mailer connection is revoked.
= 3.2.0 - 2021-11-11 =
- Added: New transactional mailer - SparkPost integration.
- Added: One-click migration from FluentSMTP plugin.
- Added: Plugin constants integration in Setup Wizard.
- Fixed: Early plugin deactivation issue with activity log plugins.
= 3.1.0 - 2021-09-28 =
- Added: New transactional mailer - Postmark integration.
- Added: Support for string attachments (added via PHPMailer object).
- Changed: Improved Email Source detection in Debug Events for WP Core sent emails.
- Changed: Improved uninstall process. It now removes all plugin DB data and tables.
- Fixed: Email Source detection in Debug Events for file paths with backslashes.
- Fixed: Blurry image assets in Weekly Email Summary.
- Fixed: PHP extension mb_strings not polyfilled correctly.
- Fixed: Added missing is_email_sent filters for Sendinblue, Mailgun, and Gmail mailers.
- Fixed: Debug Events double-entry DB save, because of a bug in is_email_sent method for certain mailers.
= 3.0.3 - 2021-08-09 =
- Fixed: Weekly Summary Email sending when migration code didn't trigger yet.
= 3.0.2 - 2021-08-05 =
- Fixed: Fatal PHP error on WP version 5.2 and lower (missing wp_timezone function).
= 3.0.1 - 2021-08-05 =
- Added: Weekly Email Summary - email sending statistics sent to your inbox.
- Added: Debug Events - logging all email sending errors and debug events.
- Added: Quick admin area links.
- Changed: Updated the successful Email Test screen.
- Changed: Updated Action Scheduler library to 3.2.1.
- Fixed: WP core admin spinner for the dashboard widget.
- Fixed: PHP error when objects implementing `__invoke()` method were used as hook callbacks for admin notices.
= 2.9.0 - 2021-06-24 =
* Added: Action Scheduler table to the Tools page.
* Added: Dashboard Widget with total emails sent counter.
* Changed: Notifications design.
* Changed: Sodium Compat library loading improved.
* Fixed: Plugin conflict with plugins that populate $_POST data (Ultimate Addons for Elementor, WishList Member, ...).
* Fixed: Sendinblue WooCommerce Email Marketing plugin conflict admin notice display.
* Fixed: jQuery deprecated notices.
* Fixed: Action Scheduler library loading issue.
* Fixed: Canceled Setup Wizard's OAuth authorization redirecting to the Setup Wizard when connecting via regular plugin settings.
* Fixed: Meta DB table not existing error notices on a WP Multisite subsite.
= 2.8.0 - 2021-05-06 =
* Added: WP Site Health status check for the sending domain.
* Added: WP Mail SMTP WordPress admin menu position filter hook.
* Changed: Moved the Email Test tab to the new WP Mail SMTP > Tools page.
* Changed: Updated the list of conflicting plugins.
* Fixed: Removed the empty admin dashboard menu item for the Setup Wizard.
* Fixed: The Setup Wizard conflicting issue with Admin 2020 plugin.
* Fixed: The plugin settings pages not opening when WishList Member plugin was active.
= 2.7.0 - 2021-03-25 =
* IMPORTANT: Support for PHP 5.5 has been discontinued. If you are running one of those versions, you MUST upgrade PHP before installing or upgrading to WP Mail SMTP v2.7. Failure to do that will disable WP Mail SMTP functionality.
* Changed: Updated About us plugin page.
* Changed: Improved Domain Check Results section in Email Test tab.
* Changed: Allow the use of different Gmail aliases as From Email address by disabling the Force From Email setting.
* Changed: The Setup Wizard can now be launched via a button in the plugin settings. The Setup Wizard admin dashboard menu item was removed.
* Fixed: WP Multisite subsite admins couldn't remove oAuth connections (in the Gmail mailer).
= 2.6.0 - 2021-02-04 =
* Added: New plugin Setup Wizard.
* Added: SendGrid Invalid API key error message and mitigation steps on the Email Test page.
* Fixed: PHP 8 support.
= 2.5.1 - 2020-10-28 =
* Fixed: The automatic updates issue with Gmail mailer token refresh.
* Fixed: The 'wp-amil-smtp' typo in a plugin text-domain and a HTML class.
= 2.5.0 - 2020-10-22 =
* Added: Other SMTP mailer password encryption/decryption.
* Changed: Gmail mailer suggested steps for `invalid_grant` error on the Settings > Email Test page.
* Changed: Gmail mailer redirect URI was changed to fix issues with `mod_security` or redirect blocking plugins/solutions.
* Fixed: Plugin options re-saving with unescaped magic quote characters.
* Fixed: SMTP.com mailer email delivery for certain SMTP servers if attachment's encoded string is too long.
= 2.4.0 - 2020-09-17 =
* Added: Prefix all 3rd-party libraries to avoid compatibility issues with other plugins using different versions of the same libraries.
* Changed: Sendinblue SDK library version to 6.4.
* Changed: Google apiclient library version to 2.7.
* Changed: Improve plugin settings input and toggle focus states.
* Fixed: Hide admin bar menu when errors are present and the "Hide Email Delivery Errors" setting is enabled.
* Fixed: CSS sourcemaps warning messages in browser dev tools.
* Fixed: Action Scheduler tasks being registered too early and not getting assigned to the plugin group.
* Fixed: Admin bar CSS asset loading when the admin bar is not showing.
* Fixed: Fatal error on plugin uninstall if `ActionScheduler_QueueRunner::unhook_dispatch_async_request` method does not exist.
* Fixed: PHP Deprecated notice for `base_convert()` function usage in the Mailgun mailer.
= 2.3.1 - 2020-08-20 =
* Added: A WP Mail SMTP admin bar menu if there is an email delivery error or notifications.
* Added: WordPress 5.5 compatibility.
* Changed: Improve copy button user experience for Gmail Authorized redirect URI option.
* Changed: Email delivery error admin notices are now displayed only on plugin pages.
* Changed: Improve plugin settings UI by hiding certain options if the mailer does not support them.
* Changed: Pepipost API mailer is no longer available for new installs.
* Fixed: WP Site Health check for missing DB tables.
* Fixed: PHP errors caused by Actions Scheduler library used inside the plugin.
* Fixed: PHP error on plugin settings and WP Site Health pages if the plugin mailer option is empty for some reason.
= 2.2.1 - 2020-07-09 =
* Added: Gmail mailer now supports aliases.
* Added: Support both old PHPMailer v5 (WordPress <=5.4) and PHPMailer v6 (WordPress >=5.5).
* Changed: Pepipost mailer is now using the native API v5 instead of the SendGrid migration API.
* Fixed: Incorrect Mailgun Domain Name option was not showing an email delivery error.
* Fixed: Empty debug errors for the Sendinblue mailer are no more.
* Fixed: Properly compare From Email option value with a correct default email address from WP core.
= 2.1.1 - 2020-06-08 =
* Changed: Remove current automatic default reply-to address and add WP filter `wp_mail_smtp_processor_set_default_reply_to` for setting default reply-to addresses.
* Changed: Improve description for several options with links to an article about how to properly use constants.
* Fixed: PHP parse error connected to Monolog library on PHP versions < 7.x.
= 2.1.0 - 2020-06-04 =
* Added: Async/scheduled tasks management support.
* Added: New warning notification for selecting the "Default (none)" mailer and saving the plugin settings.
* Changed: Set the original From Email as Reply-To address if it was overwritten by the Force From Email option.
* Changed: The Force From Email option is now enabled by default, for new plugin installs.
* Changed: Reply-To header is now set when not provided, equals to From Name/Email.
* Fixed: Display a non-empty PHPMailer error when some non-SMTP mailers generate errors.
* Fixed: Display a more accurate message, when the "channel - not found" error is triggered by SMTP.com API.
* Fixed: Save and display debug errors for the "Other SMTP" mailer.
* Fixed: Improve the debug details for the "Invalid address (setFrom)" error in the Email Test tab.
* Fixed: Improve the debug details for SMTP CA verification fail, Gmail Guzzle requirements, and Gmail invalid grant errors.
* Fixed: Improve the uninstall cleanup procedure.
= 2.0.1 - 2020-05-07 =
* Changed: Improved description of the "Do Not Send" plugin option.
* Fixed: Due to Pepipost API changes we now convert new lines so they are preserved in plain text emails.
* Fixed: Downgrade internal Guzzle dependency to 6.4 to temporarily fix compatibility issues with WordPress and Guzzle 6.5. Affects Gmail mailer.
= 2.0.0 - 2020-04-27 =
* IMPORTANT: Support for PHP 5.2-5.4 has been discontinued. If you are running one of those versions, you MUST upgrade PHP before installing or upgrading to WP Mail SMTP v2.0. Failure to do that will disable WP Mail SMTP functionality.
* Added: new mailer - SMTP.com integration.
* Changed: Plugin filters that change the FROM Name/Email in emails are now always running last.
* Fixed: `false` value of the `WPMS_SMTP_AUTH`/`WPMS_SMTP_AUTOTLS` constants was not properly handled in UI.
* Fixed: various minor code and internal links improvements.
= 1.9.0 - 2020-03-23 =
* Added: Add various Status tests and Info section on Tools > Site Health page.
* Added: Notify admin if there are unsaved changes in plugin admin area options.
* Fixed: Test email now has a proper bottom margin for better look.
* Changed: Update "About us" plugin page with relevant information.
* Changed: Save default WordPress FROM Email address when incorrect FROM Email address is saved by a user.
= 1.8.1 - 2019-12-13 =
* Fixed: Revert Guzzle version to 6.4.1 because Sendinblue and Gmail mailers may experience issues under certain circumstances while sending emails (not all sites are affected).
* Fixed: Make compatible the WordPress PhpMailer class inline attachments management with the Sendgrid API.
= 1.8.0 - 2019-12-12 =
* Added: New recommended mailer: Pepipost.
* Added: "Suggest a Mailer" link in a list of mailers to send us your ideas about new ones.
* Fixed: Sendgrid: Content ID for attachments missing.
* Changed: Timeout to HTTP requests (pepipost, sendgrid, mailgun), same as max_execution_time, to prevent fails when sending emails with big attachments.
= 1.7.1 - 2019-11-11 =
* Fixed: Compatibility with WordPress 5.3.
* Fixed: `Processor::get_default_email()` always returns empty value when server incorrectly configured.
= 1.7.0 - 2019-10-24 =
* Added: Add a new constant `WPMS_DO_NOT_SEND` to block email sending.
* Fixed: Default email (firstname.lastname@example.org) rewriting in CLI mode.
* Fixed: Incorrect conflicts detection with certain plugins.
* Fixed: various typos in plugin settings.
= 1.6.2 - 2019-09-02 =
* Fixed: Race condition when loading with certain plugins, that send emails very early. Makes email delivery more reliable.
= 1.6.0 - 2019-08-21 =
* Added: New transactional mailer: Sendinblue.
* Added: Educate users to use transactional mailers for better deliverability.
* Added: New option and filter to disable admin area delivery error notices.
* Changed: Hide private API key saved in the DB for API based mailers using `input[type=password]`.
* Changed: Update links to various docs, pointing now to https://wpmailsmtp.com.
= 1.5.2 - 2019-07-18 =
* Fixed: "Redirect URI mismatch" error for "Gmail" mailer when trying to re-authorize an account that was initially created with version < v1.5.0.
* Changed: Make "Authentication" setting in "Other SMTP" mailer ON by default for new users.
* Changed: Mailers docs links now point to wpmailsmtp.com own site.
= 1.5.1 - 2019-07-12 =
* Fixed: Duplicated emails sent to the first recipient in a loop (and others not receiving their emails).
= 1.5.0 - 2019-07-09 =
* Added: Loсo plugin support.
* Added: "About us" admin area page.
* Added: Display in debug output a possible conflicting plugin existence.
* Added: Lots of actions and filters to improve flexibility of the plugin.
* Changed: Plugin menu is now top level.
* Changed: Hide secrets/API keys in page DOM in plugin admin area.
* Changed: Do not save constant values into the database when plugin settings are saved.
* Changed: Lots of i18n improvements to support translation for both free and paid version of the plugin.
* Changed: Gmail mailer - allow to change From Name email header.
* Changed: Gmail mailer - display email used to create a connection.
* Changed: WordPress 4.9 is the minimum WordPress version we support.
* Fixed: X-Mailer header should be present in all emails.
* Fixed: PHP notices when migrating under certain circumstances from 0.x version of the plugin.
* Fixed: Options::get_group() now supports values set via constants.
= 1.4.2 - 2019-03-23 =
* Changed: Tested up to WordPress 5.1.x.
* Changed: Removed TGMPA library.
= 1.4.1 - 2018-12-03 =
* Fixed: correctly process backslashes in SMTP passwords defined via constants.
* Changed: allow to send a Test Email when Default (none) mailer is selected in plugin settings.
= 1.4.0 - 2018-11-29 =
* Added: New option: Do Not Send - block emails from being sent.
* Added: New option: Send HTML or plain text emails when doing an Email Test.
* Added: New option: Mailgun region selection - US and EU (US is default to preserve compatibility).
* Fixed: Compatibility with WordPress 3.6+.
* Fixed: Compatibility with WordPress 5.0.
* Fixed: Constants usage is much more reliable now, works correctly on Multisite. Constants are global accross the whole network.
* Fixed: Preserve multipart emails when using Sendgrid/Mailgun mailers (were converted to HTML-only).
* Fixed: Security hardening.
* Changed: Prefill Email Test page From field with currently logged in user email.
* Changed: Update libraries: google/apiclient-services, google/auth, phpseclib/phpseclib and their dependecies.
* Changed: Display in debug output cURL version if Gmail mailing failed.
* Changed: Display in debug output OpenSSL version if it exists if Gmail/SMTP mailing failed.
* Changed: Display plugin version in dashboard error notice when emailing failed.
* Changed: Do not allow to send Test Email if mailer not configured properly.
* Changed: Notify in plugin admin area that Gmail doesn't allow to redefine From Name/Email etc.
* Changed: List all constants with descriptions in plugin main file: wp_mail_smtp.php.
* Changed: TGMPA: change descriptions from "Required" to "Recommended" (labels were incorrect).
= 1.3.3 - 2018-07-05 =
* Fixed: Compatibility with other plugins, that are using Google Service or Google Client classes.
* Changed: Optimize code loading.
= 1.3.2 - 2018-06-29 =
* Make sure that other plugins/themes are not conflicting with our TGMPA library.
= 1.3.1 - 2018-06-29 =
* Fixed: Other SMTP: Clear new Debug messages about failed email delivery on next successful email sending.
* Fixed: Introduce conditional autoloader to workaround Gmail PHP 5.5 requirement and its library compatibility issues vs PHP 5.3+ minimum viable plugin version.
= 1.3.0 - 2018-06-28 =
* Added: New option: force From Email rewrite regardless of the current value.
* Added: New option: force From Name rewrite regardless of the current value.
* Added: New option: remove all plugin data on plugin uninstall (when user deletes it).
* Added: Notify site admins in wp-admin area with a notice about last failed email delivery. Cleans up on successful delivery.
* Added: Notify site admins in wp-admin area with a notice about possible compatibility issues with other SMTP and email delivery plugins.
* Added: Improve User Debug Experience when doing Email Test - display helpful description and steps to fix the issue.
* Added: New users: provide default SMTP Port value for new users based on Encryption selection.
* Added: New users: notify about not configured plugin settings.
* Added: New users: Recommend free WPForms Lite plugin for those who don't have it.
* Added: SendGrid/Mailgun: provide support for multipart/alternative types of emails.
* Added: Gmail: new button to remove connection and to connect a new Google account.
* Fixed: Support plugin installation into /mu-plugins/ directory.
* Fixed: SendGrid: required text/plain part of email being the first one - fixes plain text emails not having links.
* Fixed: SendGrid and Mailgun: improperly sending plain text emails in html format.
* Fixed: SMTP Debug output was empty in some cases.
* Fixed: Compatibility with lots of other plugins that use Google Analytics library of different versions.
* Fixed: "client_id is empty" is no more a problem, should be fixed.
* Changed: For SendGrid and Mailgun allow using custom defined attachments names if present. Fallback to file name.
* Changed: Gmail: switch to a wider scope to prevent possible issues in certain circumstances.
* Changed: Remove whitespaces start/end of keys, secrets etc.
* Changed: Improved helpful description tests of various options.
* Changed: Improved plugin autoloading functionality.
= 1.2.5 - 2017-02-05 =
* Fixed: `Return path` can't be turned off.
* Fixed: `Authentication` sometimes can't be turned off.
* Fixed: `Auto TLS` sometimes can't be turned off.
* Fixed: BCC support for Gmail was broken.
* Fixed: Debug output improved to handle SELinux and grsecurity.
* Fixed: Strip slashes from plugin settings (useful for `From Name` option).
* Fixed: Change the way sanitization is done to prevent accidental removal of useful data.
* Fixed: Plugin activation will not overwrite settings back to defaults.
* Fixed: Properly set `Auto TLS` option on plugin activation.
* Fixed: Providers autoloading improved for certain Windows-based installs.
* Fixed: Use the proper path to load translations from plugin's `/languages` directory.
* Changed: Do not autoload on each page request plugin settings from WordPress options table.
* Changed: Do not autoload Pepipost classes unless it's saved as active mailer in settings.
= 1.2.4 - 2017-01-28 =
* Fixed: Improved escaping in debug reporting.
= 1.2.3 - 2017-01-22 =
* Fixed: Gmail tokens were reset after clicking Save Settings.
* Fixed: Slight typo in Gmail success message.
= 1.2.2 - 2017-12-27 =
* Fixed: Correctly handle Mailgun debug message for an incorrect api key.
* Fixed: Fatal error for Gmail and SMTP mailers with Nginx web-server (without Apache at all).
* Changed: Update X-Mailer emails header to show the real sender with a mailer and plugin version.
= 1.2.1 - 2017-12-21 =
* Fixed: Failed SMTP connections generate fatal errors.
= 1.2.0 - 2017-12-21 =
* Fixed: Decrease the factual minimum WordPress version from 3.9 to 3.6.
* Changed: Improve debug output for all mail providers.
= 1.1.0 - 2017-12-18 =
* Added: New option "Auto TLS" for SMTP mailer. Default is enabled. Migration routine for all sites.
* Changed: Improve debug output - clear styles and context-aware content.
* Changed: Better exceptions handling for Google authentication process.
* Changed: Do not sanitize passwords, api keys etc - as they may contain special characters in certain order and sanitization will break those values.
* Changed: Improve wording of some helpful texts inside plugin admin area.
* Fixed: Do not include certain files in dependency libraries that are not used by Google mailer. This should stop flagging plugin by Wordfence and VaultPress.
* Fixed: Constants usage is working now, to define the SMTP password, for example.
* Fixed: Notice for default mailer.
= 1.0.2 - 2017-12-12 =
* Fixed: PHPMailer using incorrect SMTPSecure value.
= 1.0.1 - 2017-12-12 =
* Fixed: Global POST processing conflict.
= 1.0.0 - 2017-12-12 =
* Added: Automatic migration tool to move options from older storage format to a new one.
* Added: Added Gmail & G Suite email provider integration - without your email and password.
* Added: Added SendGrid email provider integration - using the API key only.
* Added: Added Mailgun email provider integration - using the API key and configured domain only.
* Added: New compatibility mode - for PHP 5.2 old plugin will be loaded, for PHP 5.3 and higher - new version of admin area and new functionality.
* Changed: The new look of the admin area.
* Changed: SMTP password field now has "password" type.
* Changed: SMTP password field does not display real password at all when using constants in `wp-config.php` to define it.
* Changed: Escape properly all translations.
* Changed: More helpful test email content (with a mailer name).