SMTP Mailer is the easiest SMTP plugin for WordPress. It allows you to configure an SMTP server to send email from your website. SMTP Mailer enhances the default WordPress mail (“wp_mail”) function by letting you connect to a remote SMPT server to send an email instead of doing it from your web server. This reduces heavy load from your server and increases email deliverability.
SMTP Mailer Installation
You can install the SMTP plugin like any other WordPress plugin.
Option 1 (Quick & Easy install)
- Go to Plugins->Add New from your WordPress admin dashboard
- Search for SMTP Mailer
- Click Install once you have found it
Option 2 (Manual install)
- Download the zip version of the plugin
- Go to Plugins->Add New
- Click Upload Plugin
- Select the zip file on your computer
- Install it
Option 3 (FTP install)
- Download the zip version of the plugin
- Extract it on your computer
- Connect to your site via FTP
- Browse to “/wp-content/uploads/plugins/” directory
- Upload the folder that contains the main plugin files
SMTP Mailer Settings
You will need to configure your SMTP server related information in order to send email from your website. In order to access the settings menu go to “Settings->SMTP Mailer” from your admin dashboard.
The settings menu comes with three separate tabs – General Settings, Test Email & Server Info.
General Settings
SMTP Host
Your outgoing mail server which will be used for sending email (e.g. smtp.gmail.com).
SMTP Authentication
Enable/Disable SMTP authentication when sending an email (Supported values: True/False).
SMTP Username
The username to connect to your SMTP server. You will need to provide a username if you enable “SMTP Authentication”.
SMTP Password
The password to connect to your SMTP server. You will need to provide a password if you enable “SMTP Authentication”.
Type of Encryption
The encryption which will be used for sending an email (Supported values: TLS/SSL/No Encryption. TLS is recommended).
SMTP Port
The port which will be used when sending an email (587/465/25). If you choose TLS the port should be set to 587. For SSL use port 465 instead.
From Email Address
The email address which is be used as the From Address if it is not supplied to the mail function.
From Name
The name which will be used as the From Name if it is not supplied to the mail function.
Test Email
“Test Email” menu allows you to test the functionality of the plugin after you have configured everything.
Server Info
“Server Info” menu displays some technical information regarding your server. This is very useful for troubleshooting.
Outgoing Mail Server Configurations
Here are the settings for all the popular outgoing mail (SMTP) servers.
Bluehost SMTP
For a domain name example.com, We were able to send email messages from Bluehost using the following configurations:
- SMTP Host: mail.example.com
- SMTP Authentication: True
- SMTP Username: Your domain email (e.g. support@example.com)
- SMTP Password: The password that you use to access this email account
- Type of Encryption: SSL
- SMTP Port: 465
Brevo SMTP (formerly Sendinblue)
- SMTP Host: smtp-relay.sendinblue.com
- SMTP Authentication: True
- SMTP Username: Your login email (can found be under SMTP & API > SMTP menu)
- SMTP Password: Your smtp master password (can found be under SMTP & API > SMTP menu)
- Type of Encryption: TLS
- SMTP Port: 587
Gmail SMTP
In order to connect to the Gmail smtp server with a username and password, the “allow less secure apps” option needs to be enabled in your Gmail account. Unfortunately this option is no longer available. If you wish to use Gmail SMTP you may want to take a look at my Gmail SMTP plugin which uses a different authentication method.
SMTP Mailer Add-ons
SMTP Mailer plugin comes with add-ons that you can use to enhance its functionality on your website.
Reply-To
Reply-To add-on lets you set a reply-to address for all outgoing email messages.
Email Logger
Email Logger add-on lets you log and view all email messages sent by SMTP Mailer.
Hello, why when i try to test mail i always get 504 Gateway Time-out
Unfortunately Ive tried both your plugins and neither worked to route through GoDaddy to Gmail. Unable to send any emails from website that is host3ed with GoDaddy if email is at gmail. SHAME ON YOU GODADDY!
i have same problem now
Hello.
I keep receiving this message using TLS at port 587:
Warning: stream_socket_enable_crypto(): Peer certificate CN=`XXXXXXXX’ did not match expected CN=`YYYYYYYY’
I’m using a valid certificate. Its a shared whm environment with Centos 7 + php 5.6.
PS: Without encryption it works fine but my customer wants to use TLS
@Willrich, Your SSL certificate on the server may not be configured correctly. Did you try checking this option “Disable SSL Certificate Verification”?
Hello,
Was a problem with the SMTP provider using custom configuration. Thanks for your reply. 🙂
I am not receiving emails at all when a member register, get error below, how can I fix this?
Connection: opening to smtp.websitenamehere:587, timeout=300, options=array ()
Connection: Failed to connect to server. Error number 2. “Error notice: stream_socket_client(): php_network_getaddresses: getaddrinfo failed: Name or service not known
Connection: Failed to connect to server. Error number 2. “Error notice: stream_socket_client(): unable to connect to smtp.websitenamehere:587 (php_network_getaddresses: getaddrinfo failed: Name or service not known)
SMTP ERROR: Failed to connect to server: php_network_getaddresses: getaddrinfo failed: Name or service not known (0)
SMTP connect() failed. github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
@ava, There is a thread on this topic here: https://github.com/PHPMailer/PHPMailer/issues/179.
It looks like a DNS configuration issue.
I’m getting a similar error. I’ve contacted Godaddy a few times and they tell me it a problem with the plugin and that I have to contact the developer. Here’s the error:
Connection: opening to relay-hosting.secureserver.net:25, timeout=300, options=array ( ‘ssl’ => array ( ‘verify_peer’ => false, ‘verify_peer_name’ => false, ‘allow_self_signed’ => true, ),)
Connection: Failed to connect to server. Error number 2. “Error notice: stream_socket_client(): unable to connect to relay-hosting.secureserver.net:25 (Connection refused)
SMTP ERROR: Failed to connect to server: Connection refused (111)
SMTP connect() failed.
https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
Any ideas???
Thanks
@Eman, Are you on a shared hosting?
yes
@Eman, According to GoDaddy, That’s how SMTP should be configured on their server. They may have blocked this port for some reason. Please contact them to see if you need to use a different port or settings.
Hello, similar error like Eman, godaddy provider, I’ve contacted Godaddy and they say everything is ok. :s
2020-01-23 18:21:22 Connection: opening to relay-hosting.secureserver.net:25, timeout=300, options=array ()
2020-01-23 18:21:23 Connection failed. Error #2: stream_socket_client(): unable to connect to relay-hosting.secureserver.net:25 (Connection refused) [/home/h3mphtybvlvt/public_html/wp-includes/class-smtp.php line 298]
2020-01-23 18:21:23 SMTP ERROR: Failed to connect to server: Connection refused (111)
SMTP connect() failed.
https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
did you know how to fix it?
I’m using the SMTP Mailer and it’s working, but I’m having trouble with the password reset emails. They don’t have any line breaks and the link to reset the password is missing. When doing a little research it may have something to do with the line break format.
One suggestion I found was to “Replace all line feeds (“n”) by in the message body?” Is it possible to make this type setting change in SMTP Mail?
@Sharon, The password reset email is generated by WordPress. I don’t think it would be a good idea to dynamically change the email body since it comes from the core.
Thanks, just trying to track down what is causing the password link not to show in emails, and I’m very confused. When I look at the complete original email in gmail for instance, the link is there in the header file, but it is not showing in the displayed email.
Hi,
I followed instructions on https://wordpress.org/support/topic/fixed-my-problem-with-godaddy-not-e-mailing-gravity-forms/ and I got the following error.
I saw some another user having a similar, if not the same, issue and I did not see any solutions.
Can you please help? It’s kind of urgent.
Thank you very much.
Connection: opening to relay-hosting.secureserver.net:25, timeout=300, options=array ()
Connection: opened
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “220 a2nlsmtp01-04.prod.iad2.secureserver.net : HOSTING RELAY : ESMTP Grid hosting relay server ready”
SERVER -> CLIENT: 220 a2nlsmtp01-04.prod.iad2.secureserver.net : HOSTING RELAY : ESMTP Grid hosting relay server ready
CLIENT -> SERVER: EHLO academyofoperativedentistry.com
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “250-a2nlsmtp01-04.prod.iad2.secureserver.net hello [107.180.111.21], pleased to meet you”
SMTP -> get_lines(): $data is “250-a2nlsmtp01-04.prod.iad2.secureserver.net hello [107.180.111.21], pleased to meet you”
SMTP -> get_lines(): $str is “250-HELP”
SMTP -> get_lines(): $data is “250-a2nlsmtp01-04.prod.iad2.secureserver.net hello [107.180.111.21], pleased to meet you250-HELP”
SMTP -> get_lines(): $str is “250-SIZE 30000000”
SMTP -> get_lines(): $data is “250-a2nlsmtp01-04.prod.iad2.secureserver.net hello [107.180.111.21], pleased to meet you250-HELP250-SIZE 30000000”
SMTP -> get_lines(): $str is “250-ENHANCEDSTATUSCODES”
SMTP -> get_lines(): $data is “250-a2nlsmtp01-04.prod.iad2.secureserver.net hello [107.180.111.21], pleased to meet you250-HELP250-SIZE 30000000250-ENHANCEDSTATUSCODES”
SMTP -> get_lines(): $str is “250-8BITMIME”
SMTP -> get_lines(): $data is “250-a2nlsmtp01-04.prod.iad2.secureserver.net hello [107.180.111.21], pleased to meet you250-HELP250-SIZE 30000000250-ENHANCEDSTATUSCODES250-8BITMIME”
SMTP -> get_lines(): $str is “250 OK”
SERVER -> CLIENT: 250-a2nlsmtp01-04.prod.iad2.secureserver.net hello [107.180.111.21], pleased to meet you250-HELP250-SIZE 30000000250-ENHANCEDSTATUSCODES250-8BITMIME250 OK
CLIENT -> SERVER: STARTTLS
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “500 command unrecognized”
SERVER -> CLIENT: 500 command unrecognized
SMTP ERROR: STARTTLS command failed: 500 command unrecognized
SMTP Error: Could not connect to SMTP host.
CLIENT -> SERVER: QUIT
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “221 2.0.0 a2nlsmtp01-04.prod.iad2.secureserver.net : HOSTING RELAY : closing connection”
SERVER -> CLIENT: 221 2.0.0 a2nlsmtp01-04.prod.iad2.secureserver.net : HOSTING RELAY : closing connection
Connection: closed
SMTP Error: Could not connect to SMTP host.
Dear Admin,
I made it work by switching to NO Encryption. Thank you!!
Hey! How can I use on the form it? For exemplo:
Hey! How can I use on the form it? For exemplo: “”
<form action=”what will go here?”>
@Genesis, This has nothing to do with form action. When an email is sent via a plugin (by calling the “wp_mail” function), SMTP Mailer will send that email through your pre-configured SMTP server.
Hi,
Just installed your SMTP plugin to work with Contact Form 7 as it shows in your info, but a form that used to work before (but in fact did not send the message) now gives an error message and thus the combination doesn’t seem to work. Sending a SMTP test message works fine and also Confact Form 7 says the form is ok, so now I’m stuck in the middle. Where can I look for logs, errors, etc. to resolve this?
Many thanks in advance,
Martin
@Martin, That means there is no error on WordPress’s end and the email was sent successfully without any issue. Did you check the spam folder?
Plugin works well for me but I want to send email to many people, how can I?
@Syed, This plugin can’t send an email to multiple recipients (you will need to find a different plugin for that). It only changes the way an email sent in the backend.
Good to hear! Actually, I love the settings which this plugin had done e.g it has put my domain name after “mailed by:” thing in emails. But now what I want to know is that if I make this plugin available in my website, then how can I send emails in similar manner? I haven’t found such plugin yet. Please Guide. Thanks!
I have correctly filled in all the configuration parameters of the SMTP Mailer plugin and when I send a test mail I get the following error
Invalid address: (punyEncode) SMTP_FROM
@Eidy, Please provide your configuration details so I can take a look.
Hello I Can not configure SMTP settings because of below error
“Postman is unable to run. Email delivery is being handled by WordPress (or another plugin).
Postman needs translators! Please take a moment to translate a few sentences on-line 🙂
New for v1.7! Send mail with the Mandrill or SendGrid APIs.”
Please can you help me fix this Error
Thanks.
@Bhavesh, You cannot have multiple SMTP plugins activated at the same time.
I have created have setup the plugin and it works. My main problem now is, from where do i send those messages?
The Plugin doesn’t have any room for that.
@Ifeanyi, The plugin doesn’t send any email. It changes the method that is used to send an email in WordPress.
The test works great. But, when I try to send an email with the contact form, I get the message:
Missing CSRF session token. The session that has generated this token has already been used and is not available. Please reload the page and submit a new form.
Any ideas?
I was able to turn off the CSRF message. But, the contact form (VFB Pro) still won’t work. It tells me the message was sent. However, no contact form is received.
@Steve, Which SMTP provider are you using? Have you checked the spam folder?
Neverr mind. I went with a different plugin. Don’t have time to play these games.
Hi, thanks for the plugin! It seems that my installation only works when I disable the SSL verification, although the certificates are correctly installed (
https://www.xolphin.com/sslcheck/futurestore.nl
). I am using PHP 7.2.11 on CentOS 6.1 and WordPress 5.2.2.I hope you can help.
Best regards,.
Paul van Asseldonk
Hi, I figured it out myself, I forgot to install the root certificate for the server, silly me.
Best regards, Paul
Is there no way to set a Reply-To address in this plugin?
Hi,
Is There any settings to send email in Inbox not in Spam.
Best regards,
Keyur Patel
Hi Keyur Patel,
Answer is : NO!
But you can use this plugin with Gmail SMTP for fix the SPAM issue.
Also, You can contact your host provider for rechecking the ‘SPF, DKIM’ Record’ . If you don’t have set this, then always your email goes to SPAM.
Thanks
Sabbir
Hi seting up a new email on a contact form and using the smtp mailer. It worked fine until we changed the email address. Any idea what might cause this?
Sender address rejected: not owned by user admin@**************.**
@Neil, Did you change the SMTP email address? Have you also updated the password for it?