When using WP Client Reports PRO, automatic email sending and scheduling issues can occasionally occur. These are most often related to specific server configurations, plugin conflicts, or WordPress cron functionality. Below, we’ll walk you through some steps to help identify and resolve these issues.
First Things First #
Test in a Staging Environment #
To isolate the problem, test the functionality in a staging site where you can freely enable or disable plugins and themes without impacting the live site. Ensure email functionality is active in the staging environment.
Helpful Diagnostic Tools #
These plugins can help pinpoint the root cause of the issue:
- WP Crontrol:
Allows you to view and manually run scheduled wp_cron tasks. - Mail logging – WP Mail Catcher:
A tool to verify if emails are being sent from your site. - Query Monitor:
Provides insights into errors, conflicts, or database queries related to the plugin.
Confirm Your Website Sends Email #
You can use the WP Mail Catcher plugin to track email activity on your WordPress site. Follow these steps:
- Install and activate the Mail logging – WP Mail Catcher plugin.
- Send a test email from your site using a contact form or a similar feature – our support team likes to use the built-in WordPress password reset feature on the login form.
- Send a manual report from the Dashboard > Reports page.
- Check the Mail logs to see if the emails were generated and sent.
If the emails appear in the logs but aren’t delivered, the issue is likely with your email server or domain configuration.
If the email doesn’t appear in the logs, WordPress isn’t generating the email and it’s likely that there is a plugin/theme/custom code conflict or that your web host has disabled PHP mail. You can check for conflicts by temporarily disabling all plugins and switching to a default theme like Twenty Twenty-Five. Then re-enable them one by one, testing emails each time to identify potential conflicts.
For a deeper dive on diagnosing general website email issues, check this help doc: Troubleshooting WordPress Email Deliverability Issues
Confirm Your Site’s Traffic #
The WordPress cron system, aka wp_cron, relies on site visits to trigger scheduled tasks. If your site isn’t receiving traffic, scheduled reports may not send as expected. Often this means that an action that was scheduled to happen at a specific time does not get triggered until a later time when someone visits the website. If you have a website that does not get a lot of web traffic, it could be hours, or even days later!
This problem can get even trickier when a caching plugin or host-based request caching is added to speed up a website. Often this means that a page is cached for hours at a time and no requests come in to WordPress until it is time to refresh that page cache.
Steps to check:
- For multisite setups or multiple sites, confirm all sites are active and receiving visits.
- Visit your website or check analytics to ensure traffic is flowing.
Manually Trigger the Cron Event #
Using the WP Crontrol plugin, you can manually run the wp_client_reports_pro_auto_send
cron hook:
- Make sure you have WP Client Reports Pro configured to send scheduled report emails.
- In the WordPress admin, navigate to Tools > Cron Events.
- Find the
wp_client_reports_pro_auto_send
hook. - Click Run Now to manually trigger it.
- Check the Mail Catcher log to see if the scheduled report email was sent.
Note: If your website is manually sending email successfully, the scheduled report will be sent to the address that is configured in WP Client Reports settings.
If the emails are sent and/or show up in Mail Catcher log, the issue may be tied to WordPress cron not firing automatically.
Automatically Trigger Cron Events #
For sites with low traffic or heavy caching, the best way to fix this is to implement a real server “CRON” job that helps WordPress to check for tasks every minute. Contact your web hosting provider for help with setting up a CRON job or try searching the web for the name of your web host and “wp cron” and you are likely to find a helpful article. ChatGPT can be helpful here as well.
Alternatively, you can use an uptime monitor to help trigger wp_cron events by pinging “yourdomain.com/wp-cron.php”.
Here are some additional resources to help you better understand WP Cron:
Check Hosting, Domain, and Plugin Configurations #
If the above steps don’t help identify the issue, the problem may lie in your hosting setup. Contact your host and review your DNS configurations to ensure:
- Hosting Provider Restrictions: Some hosting providers block PHP or limit the number of emails sent via PHP Mail, which can affect delivery.
- Incorrect Email Settings: Misconfigured email addresses or server settings can cause emails to fail. For instance, if your site’s domain is foo.com and you are trying to send mail from the site as foo@bar.com it’s highly likely your email will be blocked or marked as spam without additional configuration.
- Spam Filters: Emails may end up in recipients’ spam folders if DNS records like SPF, DKIM, and DMARC aren’t set up properly.
Advanced Debugging #
For persistent issues, consider enabling WordPress debug mode to log errors:
- Add the following lines to your
wp-config.php
:define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
- Review the
debug.log
file in thewp-content
folder for errors related to WP Client Reports.
Common Causes and Fixes #
Cause | Solution |
---|---|
Low traffic | Set up a real cron job via your web host or set up a ping service to ensure web traffic will trigger wp_cron events. |
Plugin conflicts | Disable other plugins and retest. |
Email not sending | Use Mail Catcher or test email functionality on your site. |
Server configuration issues | Contact your host for support with cron jobs or email sending issues. |
Custom theme causing conflicts | Switch to a default WordPress theme like Twenty Twenty-Five and test again. |
By following these steps, you should be able to identify and resolve the vast majority of potential issues related to automatic sending and scheduling. If you still encounter problems, feel free to reach out to support for further assistance.