I use the super popular contact Form 7 plugin for wordpress. I run it on a few other sites I run with no issue but for some reason I was not getting any emails sent out on this site. When I try to email using the form , I get a success notification and no email gets sent out, which was really worrying because my visitors think they have successfully emailed me and I get no emails !!!
contact form 7 not sending message ?
Before we begin I want to make one thing very clear, the issue lies with my sever and not the plugin itself. The wordpress plugin is quite easy to install and when you fill the contact form fields and click on the send button you get a “Your message was sent successfully. Thanks.” which indicates a successful email being sent out but if you check your inbox you will find that the email is never there. It was not even caught up in the spam folder.
I believe Contact Form 7 uses the built in wordpress wp_mail function and there could be some issue on how its setup or perhaps your server will not allow call to that function which is quite similar to PHP’s mail function. But there should be a way around it right ? Sure there is.
Contact Form 7 Not Working ? Here is a fix
There is a wordpress plugin called WP Mail SMTP which tells the the wp_mail() function to use SMTP instead of php mail() and gives you a admin settings page to manage the settings. You can take a look at the developers page to learn more about it. Download install and activate it.
Now open up the settings page from Admin Sidebar >> Setings >> Email.
- In the From Email field add your desired email id ( this is the from email id your visitors will see ).
- Add your name or the Site name in the From Name field.
- In the Mailer field select the first option Send all WordPress emails via SMTP.
- For SMTP Options I use Google Apps ( if you use the same or gmail ) you can enter the same details , else add in your SMTP details
- SMTP Host : smtp.gmail.com
- SMTP Port : 465
- Encryption : Use SSL encryption.
- Authentication : Yes: Use SMTP authentication.
- Username : your username including @domain.com
- Password : your email password
You can test it out by using the Send a Test Email option or try to fill in the Contact Form 7 page and see if you receive an email. It resolved the issue for me. Let us know if it resolves your issue.