[Resolved] Email notifications sent from CRED forms logged as sent but never received
This thread is resolved. Here is a description of the problem and solution.
Problem:
The forms' notifications are not sent even if the test email is sent and other WordPress emails are sent.
Solution:
Toolset puts the notifications emails into a queue, then sends it at the end of the page request process. Maybe, we can fix the issue with this form by disabling the queue. Add the following line to your wp-config.php file:
I have a problem with cred form notifications that has 'appeared' out of nowhere. I can't figure out what's up. I am hoping for a second pair of eyes... 🙂
I have only 4 forms on this site to create or edit. On form submission an email should be sent either to a specific email address or to an email address specified in a form field. Recently I realised that these emails are not being received.
Here is my setup:
1. WP SMTP installed and running Gmail Mailer API
2. WP Mail Log installed and logging emails sent
3. Cred form set to send an email on submission (see example attached)
4. The site's 'FROM' email address is not the same as any 'TO' email address
5. Emails are deactivated on the server
6. All plugins, themes and wordpress are completely up to date
Troubleshooting so far:
1. Turned off all other plugins and themes to check for any confliction = no change.
2. Turned off the WP SMTP plugin = no change.
3. Tested all 'TO' emails outside the website to make sure they are working fine = working.
4. Sent tests using all the different form settings with every different email address I have at my disposal.
Conclusions so far:
1. If I send a test email from the form to any email address it arrives.
2. If I submit the form to trigger the email specified in the form it never arrives.
3. In the WP Mail Log every test is shown to be sent successfully with no errors logged.
Hoping someone knows something else I can check, test etc. I have run out of ideas...
Toolset notifications use the built-in WordPress mail function to send emails, and if a logging plugin like WP Mail Log says they have been sent then from Toolset's perspective it looks like it is working.
Try using hidden link.
Go to that web site, which will generate a temporary email address. Update your form notification settings to send a notification to that email address.
It can then tell you whether the message is received, but maybe rejected, filtered etc. for some reason.
Thanks for coming back so quick. Wow cool I didn't even know this tool existed. Have tested just as you described and get this result - hidden link
So looking at this result... The key points I think are...
Under You're not fully authenticated section it says"We didn't find a mail server (MX Record) behind your domain name" If I am using the Gmail API Mailer do you think I need to add an SPF record and a DMARC record on the domains DNS?
Under the SpamAssassin its says that the "FORGED_GMAIL_RCVD - 'From' gmail.com does not match 'Received' headers" Would you know what this means? I 'll need to research what this is.
Also under SpamAssassin it says that the "RDNS_NONE - Delivered to internal network by a host with no rDNS (This may indicate you do not have a rDNS configured for your hostname or the rDNS does not match your sending IP)" Will also need to investigate what this is too.
Also under SpamAssassin it says that the "TO_NO_BRKTS_NORDNS_HTML - To: lacks brackets and no rDNS and HTML only" Ummmm yeah will need to find out what it is.
Hello Rita! This is Jamal from the support team. I hope you wouldn't mind me continuing with you on this ticket.
Honestly, I don't know much about the mailing protocol and what relates to SPAMs. However, the test confirms that emails can be sent from your website. Toolset notification's test also confirms that the email is sent from the website. But, still, the form does not succeed to send emails.
Toolset puts the notifications emails into a queue, then sends it at the end of the page request process. Maybe, we can fix the issue with this form by disabling the queue. Add the following line to your wp-config.php file:
If this does not help, would you allow temporary access to your website to check it further? I might need to take a copy of the website, would it be fine with you?
Your next reply will be private to let you share credentials safely. ** Make a database backup before sharing credentials. **
Hi Jamal
No problem at all re taking over the thread.
I added the filter you proposed to functions.php and yes it resolves the issue perfectly.
I didn't even think of the possibility of queuing.
I'll close this ticket and thanks again for your help!
Rita