A fallback is a unique solution only exist on Post SMTP. You can configure a backup SMTP, so if your emails are failing your site will keep sending emails !!! Read the detailes here
Get notified if your emails are failing inside your Chrome browser. Download here
Post SMTP is a next-generation WP Mail SMTP plugin, that assists in the delivery of email generated by your WordPress site. Post SMTP is the first and only plugin to support the latest security standards. With OAuth 2.0, there is no need to store your email passsword in the WordPress database where it might be found.
The Connectivity Test and intelligent Setup Wizard scan your SMTP server to detect firewall blocks and eliminate configuration mistakes. The built-in Email Log is an invaluable resource for diagnosing problems with emails. Even hosts that block the standard SMTP ports, like GoDaddy or Bluehost, can't stop your email as Post SMTP can deliver via HTTPS if it can't use SMTP.
Post SMTP is not another WP Mail SMTP clone like WP Bank or Easy SMTP. It replaces the default WordPress SMTP library, PHPMailer, with the heavy-duty Zend_Mail. Never lose an email to PHP mail() again.
See how fast and easy to setup Post SMTP with Google/Gsuite or any SMTP service.
https://www.youtube.com/watch?v=z-x1DhcAN0o
- Easy-to-use, powerful Setup Wizard for perfect configuration
- Commercial-grade Connectivity Tester to diagnose server issues
- Log and resend all emails; see the exact cause of failed emails
- Supports International alphabets, HTML Mail and MultiPart/Alternative
- Supports forced recipients (cc, bcc, to) and custom email headers
- SASL Support: Plain/Login/CRAM-MD5/XOAUTH2 authentication
- Security Support: SMTPS and STARTTLS (SSL/TLS)
- Copy configuration to other instances of Post
- Supports the proprietary OAuth 2.0 implementations of Gmail, Hotmail and Yahoo
- Fire-and-forget delivery continues even if your password changes
- Gmail: By combining OAuth2 and the Gmail API, Post can deliver where other plugins can not
-
Gmail API for sending Gmail and Google Apps email (requires a Google account) Often bloggers and small business owners don't want to use third-party SMTP services. Well you can use your Gmail or G Suite account for SMTP emails. Check the guide I wrote
-
Mandrill API for sending any email (requires a Mandrill account) Mandrill is an email infrastructure service offered as an add-on for MailChimp that you can use to send personalized, one-to-one e-commerce emails, or automated transactional emails.
-
Mailgun API for sending any email (requires a Mailgun account) Mailgun SMTP is a popular SMTP service provider that allows you to send large quantities of emails. They allow you to send your first 10,000 emails for free every month.
-
SendGrid API for sending any email (requires a SendGrid account and PHP 5.3) 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.
Post SMTP needs translators! If you are a non-English speaker, please get involved!
- Woocommerce
- WPForms
- Elementor Forms
- Contact Form 7
- Gravity Forms
- Fast Secure Contact Form
- Visual Forms Builder
- Contact Form Builder
- PlanSo Forms
- Quform
- MyMail Newsletter by revaxarts
- SendPress Newsletters
- WP HTML Mail
- Email Templates
- WordPress Leads
- .. and every other plugin that uses the WordPress API wp_mail to send mail!
- WordPress 3.9 and PHP 5.6 with SPL and iconv
- Memory: 750KiB per process at idle
- Reliable mail delivery with custom email domains requires an SPF record
- Reliable SMTP delivery requires credentials with an email service provider
- OAuth 2.0 features require a Gmail, Hotmail or Yahoo mail OAuth 2.0 credentials
Post SMTP (aka Postman SMTP) plugin was originally created by Jason Hendriks.
To send email reliably, you must use the SMTP server assigned to that email. If Post is unable to connect to the right SMTP server, you may have to ask your host to open the ports, or create a new email account managed by your host, or switch hosts!
The Connectivity Test utility will tell you which ports are open and the actions available to you.
= Easy install and setup! (Recommended for all users) =
- Install and activate the plugin through the 'Plugins' menu in WordPress.
- In the WordPress 'Settings' menu select 'Post SMTP'.
- Choose 'Start the Wizard' and follow the instructions.
- Choose configure manually
- In 'Transport', choose 'SMTP'
- In 'Outgoing Mail Server Hostname', enter the SMTP Server's hostname
- In 'Outgoing Mail Server Port', enter the SMTP Server's port
- In 'Security' choose the appropriate type (a good guess is SMTPS for port 465, STARTTLS otherwise)
- In 'Authentication', choose the authentication type (a good guess is 'Plain')
- If your Authentication method is not 'None', enter your username (probably your email address) and password.
- Choose the 'Message' tab.
- In 'Envelope From Address' enter your email address. This MUST be the same address you login to webmail with.
- In 'Message From Address' enter your email address. Or this can be an alias, mailing list, or group email if you wish.
- Choose the Save Changes button.
- Send yourself a test email.
- Choose configure manually
- In 'Transport', choose 'SMTP'
- In 'Outgoing Mail Server Hostname', enter the SMTP Server's hostname
- In 'Outgoing Mail Server Port', enter the SMTP Server's port
- In 'Security' choose the appropriate type (a good guess is SMTPS for port 465, StartTLS otherwise)
- In 'Authentication' choose 'OAuth 2.0'
- Post will give you a link to the Client ID maintenance page of your email service provider. Create a Client ID for your WordPress site.. instructions for this are detailed in the FAQ
- Copy your generated Client ID and Client secret into the plugin's Settings page.
- Choose the 'Message' tab.
- In 'Envelope From Address' enter your email address. This MUST be the same address you login to webmail with.
- In 'Message From Address' enter your email address. Or this can be an alias, mailing list, or group email if you wish.
- Choose the Save Changes button.
- Choose the 'Request OAuth2 Permission' link and follow the instructions.
- Send yourself a test email.
Post is developed on OS X with PHP 5.5.14 and Apache 2.4.9. Post is tested in a Red Hat OpenShift environment with PHP 5.3.3 and Apache 2.2.15 with Gmail, Hotmail and Yahoo Mail (US). Post is tested with mailtrap.io.
A modern replacement for traditional password-based authentication. Post supports the OAuth 2.0 implementations of all three major e-mail providers: Gmail, Hotmail and Yahoo Mail.
Post requests a limited access OAuth 2.0 token (valet key) to access the APIs (enter the house) and perform a specific service (handle Gmail, stay out of Google Docs) with no need for you to surrender your username and password credentials (master house key).
Once access is granted, Post commandeers the WordPress wp_mail() function to provide an incredibly stable mail sub-system.
Google does have a setting to allow less secure apps but this option is not available if you're using Google Apps to manage a domain.
There are many reasons why OAuth 2.0 is better than any password-based mechanism:
- Post will never ask for your password, so your password can't be stolen
- If you change your password regularly, you will never have to update Post's configuration
- You have tighter control over the data Post has access to. For Google users it can never access your Calendar or Docs or YouTube; for Yahoo users it can never access your Flickr
- If your WordPress site gets hacked, you can revoke Post's email access without impacting any other application or website that has access to your account
NEVER give out your Gmail, Microsoft or Yahoo password to a 3rd-party or 3rd-party program that you don't fully trust.
To use OAuth, your website needs it's own Client ID. The Client ID is used to control authentication and authorization and is tied to the specific URL of your website. If you manage several websites, you will need a different Client ID for each one.
Go to Configure Post SMTP with Gmail\Gsuite OAuth
- Go to Microsoft account Developer Center and select 'Create application'.
- In the 'Application name' field enter 'Post SMTP'. Select 'I accept.'
- Select 'API Settings' from under 'Settings'.
- In 'Redirect URL', enter the redirect URI given by Post (either from the wizard, or from the manual configuration page). Select Save.
- Select 'App Settings' from under 'Settings'.
- Enter the Client ID and Client Secret displayed here into Post's settings page.
- Go to Yahoo Developer Network and select 'Create an App'.
- In the 'Application Name' field enter 'Post SMTP'. For 'Application Type' choose 'Web Application'.
- In 'Home Page URL', enter the 'Home Page URL' given by Post.
- In 'Callback Domain', enter the 'Callback Domain' given by Post.
- Under 'API Permissions' choose 'Mail'. Under 'Mail' choose 'Read/Write'
- Click 'Create App'
- Enter the Client ID and Client Secret displayed here into Post's settings page.
- If you have a Google Account, from the Google Developer's Console use the Delete button under the Client ID.
- If you have a Microsoft Live account, from the Microsoft account Developer Center, select the Application and choose Delete Application.
- If you have a Yahoo Account, from the Yahoo Developer Network My Apps, select the Application and choose Delete App.
Please note that the Client ID and Client Secret fields are NOT for your username and password. They are for OAuth Credentials only.
Error authenticating with this Client ID. [Error executing wp_remote_post: The user has blocked requests via HTTP.]
Your WordPress site is configured with WP_HTTP_BLOCK_EXTERNAL to prevent outbound connections. Add a whitelist rule to wp-config.php:
define('WP_ACCESSIBLE_HOSTS', 'www.googleapis.com, login.live.com, api.login.yahoo.com');
Error authenticating with this Client ID. [Error executing wp_remote_post: Failed to connect to xxxx] =
There is a firewall on port 443 between you and the OAuth2 server. Open up the port for outbound connections.
- You did not enter the Redirect URI correctly, watch the instructional video
- You used an IP address instead of a domain name (not allowed)
You've forgotten to choose an email address in the consent screen.
Communication Error [334] – make sure the Envelope From Email is the same account used to create the Client ID.
- This is almost always caused by being logged in to Google/Microsoft/Yahoo with a different user than the one Post is configured to send mail with. Logout and try again with the correct user
- Login to Webmail and see if there is an "Unusual Activity" warning waiting for your attention
- Your host may have installed a firewall between you and the server. Ask them to open the ports.
- Your may have tried to (incorrectly) use SSL over port 587. Check your encryption and port settings.
- Your host may have poor connectivity to the mail server. Try doubling the Read Timeout.
- Your host may have installed a firewall (DROP packets) between you and the server. Ask them to open the ports.
- Your may have tried to (incorrectly) use TLS over port 465. Check your encryption and port settings.
Your host has likely installed a firewall (REJECT packets) between you and the server. Ask them to open the ports.
You configured TLS security when you should have selected no security.
You may be on a Virtual Private Server that is playing havoc with your communications. Jump ship.
To avoid being flagged as spam, you need to prove your email isn't forged. On a custom domain, its up to YOU to set that up:
- Ensure you are using the correct SMTP server with authentication - the correct SMTP server is the one defined by your email service's SPF record
- If you use a custom domain name for email, add an SPF record to your DNS zone file. The SPF is specific to your email provider, for example Google
- If you use a custom domain name for email, add a DKIM record to your DNS zone file and upload your Domain Key (a digital signature) to, for example Google