SMTP Mailer Plugin For WordPress

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 wordpress plugin

SMTP Mailer Installation

You can install the SMTP plugin like any other WordPress plugin.

Option 1 (Quick & Easy install)

  1. Go to Plugins->Add New from your WordPress admin dashboard
  2. Search for SMTP Mailer
  3. Click Install once you have found it

Option 2 (Manual install)

  1. Download the zip version of the plugin
  2. Go to Plugins->Add New
  3. Click Upload Plugin
  4. Select the zip file on your computer
  5. Install it

Option 3 (FTP install)

  1. Download the zip version of the plugin
  2. Extract it on your computer
  3. Connect to your site via FTP
  4. Browse to “/wp-content/uploads/plugins/” directory
  5. 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.

SMTP Mailer WordPress plugin menu

The settings menu comes with three separate tabs – General Settings, Test Email & Server Info.

General Settings

screenshot of SMTP Mailer plugin 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.

screenshot of test email menu in the SMTP Mailer plugin

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)

  1. SMTP Host: smtp-relay.sendinblue.com
  2. SMTP Authentication: True
  3. SMTP Username: Your login email (can found be under SMTP & API > SMTP menu)
  4. SMTP Password: Your smtp master password (can found be under SMTP & API > SMTP menu)
  5. Type of Encryption: TLS
  6. 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.

156 thoughts on “SMTP Mailer Plugin For WordPress”

  1. Hi,
    I just tried your plugin with GMAIL and O365, but it won’t work :-/
    Both tests failed.

    Reply
    • @Montegnies, What error do you get?

      Reply
  2. Hello,

    I keep getting error:

    Connection: Failed to connect to server. Error number 2. “Error notice: stream_socket_client(): unable to connect to ssl://smtp.gmail.com:465 (Permission denied)
    SMTP ERROR: Failed to connect to server: Permission denied (13)

    I’ve turned less secure apps on and i’ve tried both SSL and TLS.

    The username and password are correct too

    Reply
  3. With php 7.3 the plugin is not working.
    no mail are sent, no error messages, nothing inside logs.
    do you have some suggestion?

    Reply
    • I am having the same issue

      Reply
  4. Hey, the plugin seems to be working well, but it keeps giving the message “SMTP Mailer plugin cannot send email until you enter your credentials in the settings.” at the top in the dashboard. That’s kind of annoying.

    Reply
    • @MVG, This is to make sure you have configured all the options in the settings. If you keep the plugin active in a non-working state your website may not be able to send any email.

      Reply
  5. Hi – I have a website with a number of contact forms, set up so as to send emails from various different email addresses.

    Could I use SMTP Mailer to send emails from a different email address for each form? Are there any restrictions on the number of email addresses I could send from?

    Many thanks in advance!

    Reply
    • @Chas, It depends on the SMTP provider. I know that Gmail doesn’t let you use a different “from email” for security reasons.

      Reply
    • Chas,

      What’s a SMPT server 🙂

      Reply
  6. What after test mails? Don’t we have to do anything to allow post notifications to our followers?

    Reply
    • @Rajan, With Test email you can check if the plugin is working on your site.

      Reply
  7. I have 2 contact forms. I have 3 emails these forms need to go to but only 1 is getting the email. I have everything set up properly (I think) I am getting the error: SMTP Mailer plugin cannot send email until you enter your credentials in the settings.
    My new host company says they set it up already. What am I missing here? Everything is set up exactly how you have it! Frustrating!!!!!

    Reply
    • @Jennifer, Have you send a test email to see if it works?

      Reply
      • I have. The test emails work perfectly. It’s the emails connected to the contact forms that’s not going through. I keep getting the STML error message.

        Reply
  8. Hi,
    I just tried your plugin with O365, but it won’t work.
    Test failed.
    SMTP Error: data not accepted.

    Reply
    • This also happening for our site that tried to use this plugin. I’ll have to find another to integrate with 0365 and wish the logging was better. The Test Email tab uses the default wordpress phpmailer system and went through, but using Office 365 account makes every form go into a black hole. It’s logged in a Mail Log pluging and submissions, but the Mail Log shows SMTP Error: Data Not Accepted.

      Reply
  9. Super Good stuff

    Reply
  10. I’ve installed and tested this plugin on my wordpress and works perfect but I’m having an issue with woocommerce emails. For example, when an order is made on my site, woocommerce is configured to send an email to me and to the customer, but the email is never sent or at least it’s never delivered. Does anyone knows what could be happening? Thanks in advance!

    Reply
    • Thanks for your insight. Do you happen to know how to add a pdf, make it fillable, or printable, with the capability to email it back… oh and to be able to add an attachment (like a fillable resume with the option to attach a resume)????

      Reply
    • Hi Daniel
      I need help on this as well, experiencing same problem. did this ever get resolved and what did you do to make it work?
      Thanks

      Reply
  11. I have followed what you have mentioned but am getting the below error.
    5.7.3 Authentication unsuccessful [BL0PR01CA0034.prod.exchangelabs.com]

    even the user name password is correct.
    also tried other plugins to nothing works.
    If I have enabled two-factor authentication case this problem?
    How to check the 25 and 587 ports are open or not? -I have doubts about this step only. May our hosting provider block this port?
    Please help me to fix this issue.
    Thanks,
    Saravanan

    Reply
    • @Saravanan, Who is your SMTP provider? Do they have instructions on this?

      Reply
      • Have you checked with your hosting company? I know that the WordPress update made all my java and jQuery unstable, so I had to install a new plugin to fix this.
        In regards to your mail check with your hosting company to make sure your incoming POP3 or STMP and your outgoing STMP match…. It even has to match the hosting companys IP address when setting up.
        I know that was my problem along with a silent fail in my contact form which I had to replace in contact form 7. My original problem still exists only one person gets the email in contact form 7 and I’m still not sure why. I hope that helps.

        Reply
  12. Hi,

    I set “From Email Address” to: no-reply@mywpwebsite.com but the email sent from WP were from mail@mywpwebsite.com.

    Could you make force “From Email Address” to be used on any email sent from WP website?

    Best regards,
    Choco

    Reply
  13. Many Thanks. It works for me (with AWS SES SMTP).

    Reply
  14. the test works even though it shows me an error, the mails get to the final destination. But the emails sent from the contact form in my page are still not being sent… Should I connect this plugin to my contact form? how can i do that? I’m currently using ninja forms and in other websites I use contact form 7

    Reply
    • @Lau, There is nothing to connect. If your contact form uses the “wp_mail” function for sending an email SMTP Mailer will automatically apply your SMTP credentials. Have you tried the “Test Email” functionality in the plugin?

      Reply
  15. Hi, I’m moving to SendGrid API my client’s website (from Mandrill). Formidable forms is still sending from the old “send” address with MailChimp… how do I get Formidable Forms to recognize that the outgoing information has changed? I’m not sure where I’m going wrong.. thanks!

    Reply
    • @Isla, Have you updated the credentials in the SMTP Mailer settings?

      Reply
      • Yes 🙂

        Reply
  16. Formidable Forms recommends a different plugin, but I wanted to try this one first.

    Reply
    • @Isla, You can try the plugin they recommend. I’m not sure how it’s possible to use your old credentials when you have already updated it. Does your website cache database options?

      Reply
      • Hi Noor,
        I solved it in the end, I’m not sure how, but it’s working. Thanks!

        Reply
  17. I tried with a custom gmail account. but it failed.
    then I tried with godaddy’s settings, also error.

    2021-02-19 19:29:27 Connection: opening to relay-hosting.secureserver.net:25, timeout=300, options=array()
    2021-02-19 19:29:28 Connection failed. Error #2: stream_socket_client(): unable to connect to relay-hosting.secureserver.net:25 (Connection refused) [/home/*************/public_html/wp-includes/PHPMailer/SMTP.php line 375]
    2021-02-19 19:29:28 SMTP ERROR: Failed to connect to server: Connection refused (111)
    SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting

    Reply
    • @pico, Port 25 seems blocked. Please contact GoDaddy to see what configuration you should be using for your hosting account. You can also check this link: https://www.godaddy.com/help/send-form-mail-using-an-smtp-relay-server-953

      Reply
  18. On a wordpress server with multiple ip addresses, sometimes an inappropriate address is chosen for the connection, causing problems with server names in the message headers. To solve this, you can modify the $phpmailer->SMTPOptions to include the address to bind the socket to.


    // get the ip address for the website we are sending from
    $bound_ip = gethostbyname($_SERVER['SERVER_NAME']); // get the server name from PHP

    //disable ssl certificate verification if checked
    if(isset($options['disable_ssl_verification']) && !empty($options['disable_ssl_verification'])){
    $phpmailer->SMTPOptions = array(
    'ssl' => array(
    'verify_peer' => false,
    'verify_peer_name' => false,
    'allow_self_signed' => true
    ),
    'socket' => array(
    'bindto' => "$bound_ip:0"
    )
    );
    } else { // set the options to use our ip address, instead of the first one on this server
    $phpmailer->SMTPOptions = array(
    'socket' => array(
    'bindto' => "$bound_ip:0"
    )
    );
    }

    Reply
  19. Hello everyone,

    Does someone knows the SMTP host for a Roundcube / OVH mail please ? Thanks

    Reply
  20. Hey,
    I am having connection errors and emails not sending out.

    I just tried to do a test email and a page of server erros and this happened:
    021-06-18 04:11:53 SMTP INBOUND: "554 5.2.252 STOREDRV.Submission.Exception:SendAsDeniedException.MapiExceptionSendAsDenied; Failed to process message due to a permanent exception with message Cannot submit message. 0.35250:4F220000, 1.36674:01000000, 1.61250:00000000, 1.45378:02000000, 1.44866:00000000, 1.36674:7A000000, 1.61250:00000000, 1.45378:05000000, 1.44866:00140000, 1.36674:0A000000, 1.61250:00000000, 1.45378:16000000, 1.44866:1F4B0000, 1.36674:0E000000, 1.61250:00000000, 1.45378:384B0000, 1.44866:20020000, 16.55847:FB210000, 17.4"
    2021-06-18 04:11:53 SERVER -> CLIENT: 554 5.2.252 STOREDRV.Submission.Exception:SendAsDeniedException.MapiExceptionSendAsDenied; Failed to process message due to a permanent exception with message Cannot submit message. 0.35250:4F220000, 1.36674:01000000, 1.61250:00000000, 1.45378:02000000, 1.44866:00000000, 1.36674:7A000000, 1.61250:00000000, 1.45378:05000000, 1.44866:00140000, 1.36674:0A000000, 1.61250:00000000, 1.45378:16000000, 1.44866:1F4B0000, 1.36674:0E000000, 1.61250:00000000, 1.45378:384B0000, 1.44866:20020000, 16.55847:FB210000, 17.4
    2021-06-18 04:11:53 SMTP ERROR: DATA END command failed: 554 5.2.252 STOREDRV.Submission.Exception:SendAsDeniedException.MapiExceptionSendAsDenied; Failed to process message due to a permanent exception with message Cannot submit message. 0.35250:4F220000, 1.36674:01000000, 1.61250:00000000, 1.45378:02000000, 1.44866:00000000, 1.36674:7A000000, 1.61250:00000000, 1.45378:05000000, 1.44866:00140000, 1.36674:0A000000, 1.61250:00000000, 1.45378:16000000, 1.44866:1F4B0000, 1.36674:0E000000, 1.61250:00000000, 1.45378:384B0000, 1.44866:20020000, 16.55847:FB210000, 17.4
    SMTP Error: data not accepted.

    ....
    -> SERVER: QUIT
    2021-06-18 04:11:53 SMTP INBOUND: "3559:0000000030020000000000000200000000000000, 20.52176:140F92901500F01F0A00038A, 20.50032:140F92908517F01F07000000, 0.35180:1F000130, 255.23226:0A000000, 255.27962:7A000000, 255.27962:0A000000, 255.27962:0E000000, 255.31418:21000000, 0.35250:1F001336, 1.36674:0A000000, 1.61250:00000000, 1.45378:02000000, 1.44866:18000000, 1.36674:32000000, 1.61250:00000000, 1.45378:1D000000, 1.44866:01000000, 16.55847:84000000, 17.43559:0000000088030000000000000000000000000000, 20.52176:140F92901500101068000000, 20.50032:"
    2021-06-18 04:11:53 SMTP INBOUND: "140F9290851700002D000000, 0.35180:6D000000, 255.23226:0A001380, 255.27962:0A000000, 255.27962:32000000, 255.17082:DC040000, 0.27745:37000000, 4.21921:DC040000, 255.27962:FA000000, 255.1494:3C000000, 0.38698:00000000, 1.41134:46000000, 0.37692:86000000, 0.37948:86000000, 5.33852:00000000534D545000000000, 7.36354:010000000000010986000000, 4.56248:DC040000, 7.40748:010000000000010B6E92B098, 7.57132:000000000000000086000000, 1.63016:32000000, 4.39640:DC040000, 8.45434:5640DA101D385B4C8C24D55BC5A2D4EE30363031,"
    2021-06-18 04:11:53 SMTP INBOUND: "1.46798:04000000, 5.10786:0000000031352E32302E343234322E3032313A4B4C315052303630314D42333635333A38383136393634612D326234302D343465312D613734322D3932303833343339353838623A323134383736001002000000, 7.51330:3E7D56340F32D90807000000, 0.39570:04000000, 1.55954:0A000000, 0.49266:02000000, 1.33010:0A000000, 2.54258:00000000, 0.40002:7A000000, 1.56562:00000000, 1.64146:32000000, 1.33010:32000000, 2.54258:DC040000, 255.1750:BD000000, 255.31418:03003866, 0.22753:87000000, 255.21817:DC040000, 0.64418:03000336, 4.3984"
    2021-06-18 04:11:53 SMTP INBOUND: "2:DC040000, 0.41586:C7000000, 4.60547:DC040000, 0.21966:80030400, 4.30158:DC040000 [Hostname=KL1PR0601MB3653.apcprd06.prod.outlook.com]"
    2021-06-18 04:11:53 SMTP INBOUND: "221 2.0.0 Service closing transmission channel"

    please help

    Reply
    • @alex, What is your configuration?

      Reply
      • Seems to be a problem since updating to wordpress 5.7
        SMTP: smtp.office365.com
        SMTP Authentication: True
        SMTP Username: website@EMAIL
        SMTP Password PW
        Type of Encryption: TLS
        SMTP Port: 587
        From Email Address website@EMAIL
        From Name ; NAME

        Reply
        • @alex, Do you have any other email plugin? WordPress 5.7 introduced a filter for the wp_mail function. The plugin now uses that filter instead of overriding the mail function.

          Reply
          • Hey,

            Yesi had a template plugin i’ve turned it off and it seems to be working again. Thank you.

Leave a Comment