Have you ever experienced an issue with the Contact Form 7 plugin in WordPress? Like when you send a message it will show that it was successful but your email inbox, or even the spam box, disagree? Well, it happened to me.
I had an issue about the Contact Form 7 plugin in WordPress. I installed it in this blog two weeks before so that my site visitors has a way to contact me whenever they want, but due to my limited time I was just able to start working on it last week.
I didn’t have any problem with the installation, and the configuration is relatively easy. The page integration to Contact page also worked as I wanted. I added captcha verification from the other plugin which also worked like a charm in CF7. Actually, there was nothing unusual until I tested it.
The testing was just a simple process. I filled-up the contact form fields and click the send button. A message “Your message was sent successfully. Thanks.” showed up, indicating a successful sending. However, when I checked my email a few minutes later I still did see any new message. I checked the configuration and I did some tweaking but still the message cannot reach to my email inbox. Actually, this is not totally surprising because I am using a free hosting service. There is a possibility that the server disable or prohibit the service, like sending and email. I am not in full control of the server and I am not in position to demand anything for it.
I am not ready to give up yet though. There must be some other way. I Googled for similar problem in the web with this plugin and it seems that the issue is quite common. The problem is there are lots of suggested causes and solutions. One explanation that make sense to me is that the CF7 is using the PHP ‘s mail() function which is somehow did not work correctly in my server. This means that I need to make the CF7 plugin to use a different email function other then PHP ‘s mail(), like the one that is using the SMTP functionality. Or make the PHP’s mail function to use SMTP. It was pointed out that in order to solve the problem a SMTP plugin called wp-mail-smtp should be downloaded and installed. This plugin will make the PHP’s mail() to use SMTP to process the email.
So in the end I downloaded the plugin. Installed it in my WordPress blog and supplied the following information below.
In From Email field you can supply any of your email. Supply your email host and port in the SMTP Host and SMTP Port fields, in my I am using the gmail mail service. For the Encryption I just use the default value. And also in the Authentication. In the Username and Password fields just supply any of your working email of the smtp host that you supplied in SMTP Host field.
When I tested the CF7 again it is working perfectly.