My HP

Setting Up The WordPress Cron

Before setting up the WordPress cron, it is beneficial to understand what job the cron performs.

Crons are used to execute processes at certain intervals - for example if you've written a WordPress post that you would like to be published say first thing tomorrow morning, when that time comes around, the cron will do that process for you.

WordPress does have a built in process that runs the cron every time someone visits your website, however, this method is deemed insufficient if sadly your website doesn't attract many visitors, or alternatively, your website has lots of visitors and therefore the cron is being executed unnecessarily too often.

The following explains how to disable the built in WordPress cron and then add a more reliable cron process.


Disable the old WordPress Cron

Log into your cPanel account. If you are unsure on how to do this, please view the following help article - 'How to log into cPanel'.

alt text

Scroll down to the 'Files' section and choose 'File Manager'.

alt text

The file manager has access to all of the files on your server, including your WordPress files which is where we need to edit the wp-config.php file in order to disable the old WordPress cron.

Using the left directory listing, open the 'public_html' folder and then click onto the folder that contains your WordPress installation.

alt text

Once in the WordPress folder, locate the wp-config.php file and mouse click onto it.

alt text

Choose 'Edit' from the top menu.

alt text

Open the file in the text editor by selecting 'Edit'.

alt text

Add the following line to your wp-config.php file below the opening <?php tag.

define(&#039;DISABLE_WP_CRON&#039;, true);

Save the changes by selecting the 'Save Changes' option.

alt text

The old WordPress cron is now disabled.


Create the New WordPress Cron

In cPanel, scroll down to the 'Advanced' section and choose 'Cron Jobs'.

![alt text](https://i.imgur.com/fMlcwXP.png "Cron job 2")


If you would like to receive an email each time your cron runs, you can do so by entering your email address in the 'Email' section. You may find this useful to begin with to verify that your cron is running.

![alt text](https://i.imgur.com/obvlQ1B.png "Cron job 3")


Save the entered email adress by selecting 'Update Email'.

![alt text](https://i.imgur.com/x4TJr2S.png "Cron job 4")


To setup the cron, in the 'Add New Cron Job' section, you need to define when the cron needs to run and what command the cron is executing.

Take advantage of the 'Common Settings' for when the cron needs to run by opening the dropdown menu. If there's not one that suits your needs, enter the settings accordingly using the minute, hour, day, month and weekday options.

![alt text](https://i.imgur.com/lbT9NHA.png "Cron job 5")

You should find for WordPress, running the cron every hour is sufficient.


Enter the WordPress cron command in the 'Command' section as follows:

php /home/hpdemo/public_html/wp-cron.php

Please note, you must set your account name in place of 'hpdemo'.

![alt text](https://i.imgur.com/rzR7SMW.png "Cron job 6")

Once you are happy with your settings, select 'Add New Cron Job'.

Creating a reliable cron for WordPress is now complete.