Ensuring that E-mails Sent by WordPress are Delivered Properly
Depending on the site there could be a lot of mail sent out from WordPress. The messages could be for example newsletters, contact requests from forms, order confirmations of webshops or reminders to renew passwords. These kinds of messages are basic functions for many sites and securing the flow of emails is an important part of a well-functioning website.
In Seravo the email solution for WordPress has been structured for the customer so that the WordPress' emails are sent in the proper way. This is turn guarantees the best probability for the WordPress' emails to reach their destination. Seravo's email service works calling the PHP mail() function directly and automatically, and the customer won't have to take any extra measures.
All outgoing mail goes through a service specialized in delivering email (at the moment Seravo uses Sendgrid). At the same time the amount of outgoing mail and their delivery is followed to detect bigger disturbances. The domains registered by Seravo have always all SPF and DKIM records that affect spam filtering set correctly. And if the customer chooses to handle the domain upkeep by himself/herself, the SPF and DKIM records can be set by following Seravo's instructions.
Troubleshooting e-mail delivery issues
Any temporary issues are quite common due to the global nature of e-mail. The recipient's e-mailbox might be full, their address might have changed or – as is most common – the recipients' spam filter erroneously handles e-mail sent by WordPress as spam. This might be result of the message seeming like spam or because the sending address and settings are wrong.
Seravo has made troubleshooting these issues easy.
Firstly, you should check your log files /data/log/php-mail.log and /data/log/mail.log for what happens when your WordPress website is sending e-mail. If the log files have no events recorded, the issue might be with the PHP source code, your theme or a plugin. If this happens, e-mail has not been sent. If you can identify that e-mail has been sent, the issue is with the receiving end.
To test e-mail reception, Seravo supplies a command line tool wp-mail-test. It requires a receiving e-mail address and can be given a sender address as an optional parameter.
$ wp-mail-test firstname.lastname@example.org Sending test mail from email@example.com to firstname.lastname@example.org... Test email sent! Waiting for 5 seconds before checking the logs...
--> /data/log/php-mail.log [01-Dec-2017 10:35:47 Europe/Helsinki] mail() on [/usr/local/bin/wp-mail-test:40]: To: email@example.com -- Headers: From: firstname.lastname@example.org Reply-To: email@example.com X-Mailer: PHP/7.0.25-1+ubuntu14.04.1+deb.sury.org+1 --> /data/log/mail.log<br>Dec 01 10:35:47 host=172.17.42.1 tls=off auth=off firstname.lastname@example.org email@example.com mailsize=285 smtpstatus=250 smtpmsg='250 2.0.0 Ok: queued as D146D41E67' exitcode=EX_OK
It is possible to send to multiple addresses and then analyze where messages are received. If the message is received in some inboxes and un-received in others, it's possible to deduct the possibility of e-mail not being forwarded at all. If so, the issue can be solved by working with your e-mail service maintainer to investigate why the other e-mail service does not receive the message.
We also suggest you try Mail-tester.com. You can send test-messages to the service and it gives a report on how similar the messages were to actual spam. Using the report you can make your e-mail look less like spam.
Troubleshooting Office 365
When e-mail has been proven to work as intended by using the previous steps but the message is still not received, you need to contact your e-mail service provider.
Contacting your e-mail provider
It's crucial to contact your O365 service provider, who will guide you in troubleshooting any issues with sending e-mail. The service provider might be the company which provided the O365 license or the Microsoft support. For troubleshooting the issues an O365 admin account must be configured so that necessary modifications can be made. You can contact the Microsoft support via their support pages.
Marking incoming e-mail as non-spam
There is an array of methods for the admin to ensure that incoming e-mail is not directly dumped into the spam folder. You can read more about enabling certain IP-addresses and modifying spam-filters for example in these two support articles.
If the e-mail is marked as spam regardless when using Office 365, you can send the messages to the Microsoft support team for further analysis.
Please note that if you're using an external SMTP service you can delist their IP addresses from O365 services spam lists by using the delisting form.
Seravo uses Sendgrid to send customer email from the sites. In the service we have currently two dedicated IP addresses 220.127.116.11 and 18.104.22.168