If you have met with the problem of your admin emails ending up as SPAM on your blog’s subscribers , it is because Gmail and other email clients have started recognizing the wrong <sender address> given by your WordPress account .
There are different reasons for your end up in the SPAM folder of the recipient user.
Reason 1: Your domain name and hosting server
If the domain name you bought has sent SPAM mails before , then this will be causing a serious and unsolvable issue. Also, the hosted server plays an important role in a similar fashion. If other domains are using the shared host’s IP address for sending out SPAM emails then you don’t have any option but to change your hosting service .
Reason 2: Mail Content
Try formatting the content with minimal HTML content and avoid any ambiguous links in the content of the mail. HTML formatting is neat, i agree. But use it with caution and use it mainly for formatting only, Not to add link structures into the mail. Too many links will be ruining your chance to go to the inbox.
Reason 3: Cross Domain Mail Sending
When an email provider like Gmail sees an email coming from a server ( Your hosting provider with address hosting.abcd.com ) with a from address ( email@example.com ) , it will trigger alert. Since the <from address> is actually spoofed by WordPress to send mail from abcd.com.
The path for default WordPress mail is via PHP’s mail() function using the sendmail script. It doesn’t offer any method to login to an account and verify and then to send the message. What it does is that ,it pushes the mail directly out of the server’s mail port.
There are different ways to avoid this :
1.Using an SMTP mailer plugin
By using an SMTP mail plugin for your WordPress installation , it will be easy to set up and it will directly send the mail from the host server. But the main issue is that, most shared hosting service providers would disable the SMTP mail support.
Try using the WP Mail SMTP plugin for implementing this functionality. It asks for the SMTP login details which you can provider. If you are seeing “Connection to Host failed” , “Cannot connect to SMTP host” and so on, then that means that your server doesn’t support SMTP mailing.
2.Sending via GMail
Using Amazon SES DKIM Mailer Plugin , you can use the TLS SMTP mailing which is still open for most hosting providers. It is more secure and this method is recommended by me.
Tick “Send e-mail via GMail?” alone and leave “Send e-mail via SMTP?” without tick in the plugin settings while installing and your WordPress should start sending mails from GMail.
3.Enabling DKIM on your server.
If you have Google Apps account, you must have noticed the feature named DKIM [ DomainKeys Identified Mail ] . In short, it will let the mail servers know that your hosting service provider’s server is linked to your domain and it can send for your domain. For this to work, you have to start authentication in Google Apps by adding a TXT DNS record to your domain name service provider for your domain. This method is cumbersome, but this is the most apt solution for the SPAM issue. However implementing SMTP/Google Mail is easier than this.
When you implement DKIM and use the server to mail, the mail will appear like this in GMail,
For more details on implementing DKIM , follow Google Help Guidelines . It has step by step guidance on what to do for adding TXT record and enabling Authentication.