Cron Job: Basics & Checklist

FluentCRM is a plugin that works continuously in the background to complete and process the tasks which are scheduled every minute like any other Email Marketing Application.

Cron jobs are important because they allow for the automated execution of scripts and programs at specified intervals. This can be useful for tasks such as scheduling backups, sending notifications, or updating data. Cron jobs can also help to automate repetitive tasks and improve the efficiency of a system by removing the need for manual intervention.

PHP-based scheduled jobs fail or skip due to PHP limitations and thus FluentCRM may behave strangely because of this. To resolve this issue please consider replacing your WordPress PHP-based scheduled jobs with Server-side Cron jobs to ensure that the scripts run successfully and on time to process all the background tasks. It is strongly recommended to set up the CRON Job from your Hosting Server or Hosting Control Panel that invokes the cron with PHP Application Binary (/usr/bin/php or php)

In this article, we will be checking in with the Primary Requirement of WordPress Cron Job Handover to either Server-side or Alternative Methods.

FluentCRM Cron Status #

FluentCRM has a few scheduled events and jobs that run frequently at various intervals. The regular and healthy cron status can be found under FluentCRM Settings ⮕ Tools ⮕ Cron Job Status

The intervals are 1 Minute, 5 Minutes, and 1 Hour sequentially as below:

crm cron status

Disable Default WordPress Cron System #

Before we proceed, we will need to confirm that the default PHP-based scheduled job running is disabled from WordPress Configuration File (wp-config.php).

To do this please open the wp-config.php file and look for the section below:

/* Add any custom values between this line and the "stop editing" line. */

/* That's all, stop editing! Happy publishing. */

We need to add a new Configuration Directive for Server-Side invocation within these two lines which is below:

define('DISABLE_WP_CRON', 'true'); // Disable Default WordPress Cron System

Now the code will look similar as below:

/* Add any custom values between this line and the "stop editing" line. */

define('DISABLE_WP_CRON', 'true');    // Disable the default PHP-based Cron invocation.

/* That's all, stop editing! Happy publishing. */