Among the most common issues that most site owners face is WordPress not sending emails error. Most WordPress users complain of their contact form plugin failing to send emails,or not getting WordPress alerts.
However,it’s possible to fix this problem and send emails. The issue is often due to incompatibility or incorrect email setup.
In this guide,we’ll show you how to fix WordPress not sending emails with ease.
Don’t forget to contact us if you want pro help quickly. Use this link: Contact Helpbot
Why are you not receiving email notifications from your WP site?
Failure to receive emails from your WP site shows that the configuration of your server does include the use of PHP mail () function.
However,even if the server authorizes this function,most email providers use different tools to minimize email spam. In most cases,these tools try to determine the origin of an email,as stated,a test that most WordPress sites fail.
In such instances,any email sent from your WP website does not make it to the spam folder of your email destination. Therefore,it is advisable to avoid sending your email newsletter using WordPress.
Instead,you should use SMTP (Simple Mail Transfer Protocol),which is the set standard to send emails. As opposed to the PHP mail function,SMTP applies effective authentication that enhances email deliverability.
Although there exist many distinct SMTP services,this article covers just two.
How to fix WordPress not sending emails error
Here are the best SMTP providers to use in fixing this issue:
1) Use Gmail SMTP servers to send WordPress emails
Gmail SMTP servers are one of the best options for sending your WordPress emails. This option allows you to utilize any normal Gmail account in sending out emails. Furthermore,you will enjoy the benefit of enhanced deliverability and avoid the spam folder. Nonetheless,the free version has a limit of 3,000 emails/month. Therefore,to increase the limits,you need to pay for G Suite.
Here is how to configure Gmail SMTP in WordPress:
To start,you need to download,install,and activate a free plugin known as Post SMTP. Apart from active maintenance,this plugin is 5-star rated and has more than 30,000 active installations. Also,this plugin works exemplary with Easy Digital and WooCommerce downloads.
In this article,our SMTP server for sending emails for WordPress is Gmail. Thus,we will use the OAuth 2.0 protocol to validate Gmail API access. A secure login system that will not require users to enter their password or username.
Moreover,this plugin supports other providers like MailGun,SendGrid,and Mandrill. This makes it a great plugin to use alongside your chosen third-party SMTP.
Go to your Post SMTP dashboard>> Setup>> and click on the “Start the Wizard” button.
Here,type the email address you would like to use in sending mail,as well as your name. It is worth noting that most email services only allow sending emails from your validated one.
Once you are done to input your name and address,click on the “Next” button
On your next screen,enter the hostname of your outgoing mail server. For example,smtp.gmail.com,in this case. Next,click on the “Next” button.
Remember,some WordPress hosts require you to utilize their mail servers and accounts. They do not allow you to use others. In such a case,you should request the outgoing address from your host.
In this step,configure how to establish a connection to your mail server. In this case,we shall use the Gmail API,as some hosts block the default ports.
Thus,select Gmail API and then click on the “Next” button.
As a result,you should open a new tab and then use Google to make a new project. You need to visit console.developers.google.com. Use Gmail to send emails to log in. After that,create a new project.
Btw,if this is getting too techy for you,contact us on Social Media for quick support.
Assign your new project a name of your choice. Next,click on the “Create” button.
Go to the dashboard of your project and then click on the “Enable APIs and Services.”
Navigate to G Suite APIs and then click on the “Gmail API.”
Next,click on the “Enable” button.
Now,go to the left-hand side of that screen and click on the “Credentials” window. After that,go to create credentials and select “OAuth client ID.”
Click the “Configure consent screen” on the screen that opens after selecting the OAuth client ID.
Because of clicking the save button,you will receive a screen with client ID.
Copy and paste the above in their respective fields in the setup wizard screen. Once you have done,click on “Next” followed by the “Finish” button.
Go back to Google Developer Console and add your domain for verification.
Finally,click on “Grant permission with Google” to authorize access for your Gmail account.
Nowadays,Google has improved its risk test for new apps,which request user data. Depending on this risk test,some apps need a manual review prior to users authorizing data permissions. Otherwise,unverified apps show an “invalid_scope” error message on the permissions consent page. You need to complete the review for the error to disappear.
Although you can proceed by clicking on the “Advanced” button,you need to fill out the developer app for long-term approval. In turn,you will see an “Access Granted Successfully” message. Likewise,the status of your SMTP will display as Connected. To determine if all is well,send an email.
2) Use Mailgun to WordPress emails
One of the most famous email providers is Mailgun. It enables site owners to send numerous emails that have high deliverability.
Also,Mailgun is a dedicated service provider that does everything to ensure your email gets to its final destination. Nonetheless,it is a paid service that provides the first 10,000 emails free of charge each month.
Here is how to configure Mailgun on your WordPress:
First,go to the Mailgun website and signup. Once done,click the “Add your domain” button.
In turn,an add domain page will appear. Add a subdomain of your WP domain name. For instance,mail1.yourdomain.com. If you don’t have a subdomain,create one on your domain.
Here is how to do so:
- Go to your hosting account cPanel dashboard>> domains>> subdomains icon>>enter your subdomain>>. Choose root domain in the drop-down menu>> create button.
- After clicking on the create button,a success message saying your subdomain is created appears. Now,go to the Mailgun add domain page and add your subdomain. After adding the domain,the Mailgun shows you some DNS records.
- Return to your cPanel dashboard,and click on the “Advanced DNS Zone Editor” icon.
- This asks you to choose the domain you would like to change the DNS records. After choosing your root domain name,options for adding new DNS records will appear.
- Here,your subdomain is the first TXT. In the name field,enter your subdomain,and then choose TXT as your record type. Next,go to the TTL field and add 14400. The verification settings page shows a value,copy that value in the TXT Data field.
- For the addition of other TXT records,repeat the above process.
- After doing so,go back to the cPanel dashboard >> MX entry icon and click on it.
- This action requests you to choose your root domain. To enter a new MX entry,move down to the bottom of the page. Ensure you have entered the destination and priority values,and then click on the “Create a new record” button.
- At this point,you have managed to add your domain to Mailgun. However,Mailgun needs to confirm if the DNS records of your domain are proper. This process may take time as DNS records update slowly.
- To see the status of your domain verification,go to your Mailgun account>> Domains page. If Mailgun has verified your DNS changes,you will see “Active” status close to your domain name.
- If the domain is active,configure your WP website to start sending emails using Mailgun. Start by downloading,installing,and activating the WP Mail SMTP plugin.
- After the plugin is installed,open Settings>> WP Mail SMTP for configuration of the plugin settings. Here,enter the name you would like to use as the sender,as well as your email address.
- After that,choose your mailer as Mailgun,and then check the return path box to ensure it matches from the email address.
- Finally,enter your Mailgun sub-domain and private API key. This information is mentioned in your Mailgun account,and you all have to click on the links which appear below in every field.
- Click on the “Save Settings” button to keep your changes.
- You have now successfully configured your WordPress website to send emails through Mailgun. To check if everything is functioning well,go to Plugin settings page>> click the “Email Test” tab.
Although there exist many SMTP service providers,the above methods are enough to fix this issue. If this fails,contact your hosting provider to request solutions.
If you have any comments,suggestions,or questions on fixing the WordPress not sending an email issue,reach out to us at this link: HelpBot can help