Leaving money on the table is equivalent to burning your hard-earned money. Both signifies the loss of money in one way or another.
99% of WordPress owners will forget to test the email deliverability or the email sending capabilities of their WordPress installation once the site is made live. Most of the site owners would put emphasis on the design and other functionality aspects and leave one of the crucial components of a website, the mailing functionality
In short, most of them would commit this WordPress money mistake and would never test…
- Whether you are getting the mails from your contact/support forms
- Whether your lead generating forms are sending you the mails
- Whether the system generated mails like the essential administrative notices are being sent to you
- Whether your eCommerce invoices are being sent etc.
The problem worsens especially if you are depending solely on WordPress for your bread and butter!
My WordPress money mistake and why you shouldn’t commit the same
Now coming down to my story and how I learned not to trust the default WordPress emailing functionality for any of our mailing needs!
Somedays, I get mails from our visitors to hello[at]motivesense[dot]com saying that our response rate is pathetic nor do we care about prospective clients who tried to get project quotes using our free quote form.
So I tested our quote as well our contact form multiple times, but my mileage varied each time. Sometimes it worked and sometimes it failed, there wasn’t any consistency nor I was able to able to troubleshoot the real problem. The mailer function was just returning a TRUE value saying that all is well, but the mails are gone with the wind!
I tried all the WordPress debugging tricks but in vain.
The holy advice that you commonly get is to install a WordPress SMTP plugin and all your WordPress problems will be vanished. So also based on my development insights, I thought of giving SMTP a try. But it wasted more time than I had expected. (You can read more about it below)
So after some trial and error, I found a reliable solution which is easy and quick for any WordPress user to setup and bear the fruits of their labour within 10 mins.
Read more to find out why to implement this solution for your WordPress even if your in-house mailer is hale and hearty. 😀
How does Mr.WordPress sends my emails?
As a WordPress site owner you must know how WordPress sends the mails, not in a technical sense but you should atleast be having an idea of the background plays!
And wp_mail is a function which does the following because WordPress is not an email server by itself, so…
- It asks PHP to send the email.
- PHP then checks for a local email server within your web server
- If found and working, it tells that email server to send the email.
- Mr.WP will never ever know or cares if the mail reaches the recipient’s postbox, it just returns a binary signal(True/False). A true value does not automatically mean that the user received the email successfully. It only means that the WordPress mail method was able to process the request without any errors.
Quick Tip: Check Email helps you to test if your WordPress installation is sending emails correctly. But don’t consider it as the ultimate holy word.
Why you should not depend on your local email server?
I don’t want to teach you about the value of emails in your business, but the importance quadruples when you are using WordPress for all your business needs like running a membership site or an eCommerce store using WooCommerce
But, I’m not advising you to run your own email server unless you are a techie with oodles of time, because mail servers are complex and a headache to maintain.
Coming to the flaws of your local mail server:
- Logging the mails send by your server is a difficult task for the majority of the WordPress owners or impossible due to hosting restrictions.
- Your sysadmin may not provide you dedicated email troubleshooting/analytics help, 365 days a year!
- If your server’s IP address is shared with your bad neighbours(like in the case of shared hosting)who makes a living by sending unsolicited mails; Email Service Providers(ESPs) and blacklists occasionally block entire subnets if any of the IPs have questionable reputations. So even if your IP is clean, it might be blocked because of surrounding IPs. You can check and monitor the reputation of your website’s IP address for sending emails using SenderScore
- Sometimes servers block the PHP mailer function for security reasons.
Also Read: The Ultimate Guide to Email Blacklists
I can use SMTP for WordPress mailing needs, right?
The decade old advice for all the PHP mails problems is to switch to SMTP, but this is a half baked advice.
Yes, SMTP can be a lot more reliable than the typical wp_mail function in WordPress. But its not without any flaws.
Some SMTP plugins pose a high security risk because they store your email credentials in plain text format making it very easy to hack. You can’t be sure about which ones are saving in plain text format and which ones are not.
Don’t open the doors to cyber criminals to hack your business email:
The other SMTP problems includes:
- Local DNS failure
- Firewall blocking
- SMTP Ports can be blocked by web hosting companies
- Issues on your local network
- Authentication failures
- Sending limits(example)
- IPv6 blocking – Some service providers (including Digital Ocean) provide IPv6 connectivity for servers, but blocks outbound SMTP over IPv6 while allowing it on IPv4.
- Some web hosting companies don’t allow you to use external SMTPs like GMail(smtp.gmail.com). They want you to use their crappy email service or their SMTP 🙁
So my ultimate answer is not to use any SMTP plugins in your WordPress installation to send mails.
Which is the Best Strategy for sending mails in WordPress?
In my search for the most reliable, secure next-generation WordPress mailer, I stumbled across a WP plugin named Postman
Postman 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.
I’m not getting much into on how to install and configure Postman(which you can find in the plugin page), but I would only recommend to use the OAuth 2.0 feature of Postman.
So should I use GMail API(with Postman) for all my emailing needs?
Yes, if you don’t have the history of breaking your jaws by violating any laws, then read their usage policy.
No, if you are having some advanced needs or if you are a geek who wants to get your hands dirty, then you should use one of the dedicated email providers like:
- SendGrid (Plugin)
- Mailgun (Plugin)
- Mailjet (Plugin)
- SendinBlue (Plugin)
- Postmark (Plugin)
- SparkPost (Plugin)
Why use this strategy for your WordPress mails?
- Sending mails is 3-4 times faster than PHP’s native mail function
- The mail also arrives faster without getting choked in any traffic blocks 🙂
- You can log any send errors
- Can keep track of emails sent via your WordPress installation. (You can audit if any naughty malware is sending any mails on your behalf!)
- Escape from the hands of brutal spam filters
Understand Deeply the Problem and act on it
Let me quote from the book, The Five Elements of Effective Thinking
Don’t face complex issues head-on; first understand simple ideas deeply…Be brutally honest about what you know and don’t know. Then see what’s missing, identify the gaps, and fill them in. Let go of bias, prejudice, and preconceived notions. There are degrees to understanding (it’s not just a yes-or-no proposition) and you can always heighten yours. Rock-solid understanding is the foundation for success.
- Install an easy to use plugin like Postman or a similar one from the list that’s mentioned above
- If you want to go the hard route, then write a plugin or a piece of code that provides you an interface for logging all the mails send via WordPress
- Don’t depend on SMTP. Yes, its better than the default WordPress mailer, but not foolproof or future-proof
- Use a dedicated email service provider to send mails via their API for maximum deliverability and other advanced features
Best of luck with your WordPress emailing…if this article helped you even in a small way, please spread the knowledge by sharing this article!