WordPress users are reporting that they are not receiving emails after updating to 5.9. This means you cannot change a user’s email or password as email confirmation is required.
WordPress not sending emails
WordPress 5.9 uses PHPMailer for email delivery. However, PHPMailer can only work if your web hosting company has enabled email sending. Most VPS and dedicated web hosting plans do not support email sending. You have to purchase it as a different package. However, most shared hosting plans do offer email sending for free (with limits on the number of emails you can send per day). If you are on shared hosting, you should install WordPress and start sending emails without any configurations or problems. However, if you have been sending emails and now you can’t, then it means there is a problem somewhere.
The two most common problems that affect email delivery in WordPress is web hosting company disabling email sending to prevent abuse or SMTP authentication issues.
How to fix email not sending in WordPress 5.9
Before you begin finding a solution, make sure you have confirmed that emails are not going to your spam folder.
Solution 1: fixing SMTP authentication issues
If email sending is enabled in your server but there are issues with email delivery, then you might want to install an SMTP plugin like WP Mail SMTP. This is a free plugin that improves email delivery in WordPress.
- Activate WP Mail SMTP
- Go to settings
- From email (should be your domain email. You can use email@example.com if you don’t have a domain email). Replace yourdomainname.com with your real domain name.
- Then in Mailer select Php (default)
- Save settings
- Go to Email Test and send test email. You should receive a test email confirming that your server is allowing email sending.
- If the test email was sent without any errors but you have not received it, then proceed with the Solution 2 below to check if your web host has disabled email sending.
Solution 2: fixing email not sending due to limitations
Hosting providers like Google Cloud have disabled email sending on Port 25 (used for sending emails). You will need to look for a third-party email service provider like Amazon SES, SendGrid, Sendiblue, Mailgun, etc., and set up email delivery.
To verify if email sending is disabled in your server follow the steps below (Do not uninstall the SMTP plugin installed in solution 1 above);
- Install and activate the Check and Log Email plugin
- Click settings
- Tick the checkbox for Enable Logs, Enable Dashboard Widget, and Remove Data on Uninstall
- Save changes
- Then go to Status
- Enter your personal email
- Click Send test to email
- Go to View Logs and confirm, if the email was sent
If emails are not sent, then you need to contact your web hosting provider to find out which options are available for email sending.