Not receiving WordPress emails?
Posted by Maeve, 15 May, 2015 |
8 Comments »
Are you having problems receiving email from your WordPress site? For example, contact form submissions, or notifications from your eCommerce plugin? This is very common. The following article explains why this happens, why it particularly effects iiNet customers, and how you can fix it. If you’re not receiving WordPress emails, read on.
First, a quick check:
- Ensure you are testing it with a legit email address and check your SPAM folder.
- Confirm that MX Entries are set correctly in your cPanel. In particular, if your email is handled elsewhere from your web hosting then make sure to set “Remote Mail Exchanger” to avoid WordPress mail getting trapped in the boxtrapper. More info here.
Ok, checked that, but it’s still happening… please explain?
Sure! Let me explain. WordPress sends email using PHPs mail() function, which means that emails from your website appear (to other mail servers) to come from a computer, not a person. Thus, they are often marked as SPAM, or rejected entirely by the recipient mail server. Iinet has a very enthusiastic mail server in this regard – if you (or your customers) are with iiNet and not receiving email from your WordPress site this is a very likely suspect. Fortunately this problem can be resolved by configuring WordPress to send systems generated emails over SMTP instead of mail()
Configure WordPress to send emails over SMTP instead of mail()
- WordPress uses the default address [email protected] to send out email. We’ve found it’s helpful if this address actually exists for real on the web server. Log into your hosting control panel and create the email address [email protected] You need to do this even if your email is actually being handled elsewhere (eg through Google apps (gmail), Office 365, iiNet etc). The reasoning is complex… but in a nutshell, recipient mail servers need to see that the email comes from a genuine address – one that truly exists on the web host server. If you prefer not to use [email protected] then you can create any other email address you want.
- Log into your WordPress dash and install and activate WP Mail SMTP plugin
- In the WP Mail SMTP plugin, set the ‘from’ address as the email address you just created in cPanel. Also tell it to send over SMTP. The rest of the settings will depend on your mail server setup so configure them as per your hosts instructions. A good place to look for the correct details will be via your web hosting cPanel > Email Accounts > Set up Mail Client. If in doubt, try on default, and if that doesn’t work check in with your web host because this is important to get right!
- Send a test mail to yourself to check the config
- Your customers should now be able to receive WordPress generated emails no matter their email address, even an iiNet one 😉
Still having issues? Here’s plan B
If for some reason you continue to have issues not receiving WordPress emails, then you may need to resort to an SMTP delivery service such as SMTP2GO.
Here at Enigma we use SMTP2GO to handle our systems generated email (stuff sent out by our billing system). It gives us peace of mind knowing that email is definitely getting sent out properly. We also love that SMTP2GO provides reports that let us see exactly where the email went and what happened to it. If you go with this plan B, then the only extra step is to make sure your WP Mail SMTP plugin settings reflect the SMTP details provided by SMTP2GO.
Hopefully this article has helped you troubleshoot your WordPress email problem! Any questions, suggestions or issues feel free to leave a comment. 🙂
Maeve is an experienced UI designer and front end developer here at Enigma Digital. Aside from designing websites, Maeve develops plugins, speaks at WordPress events, and co-organizes the Perth WordPress Meetup group. She’s also an intrepid rock climber and demon trumpet player!
Latest posts by Maeve (see all)