> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://krystal-dev.crisp.help/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# How to disable the WordPress CRON job and set it up in Onyx

WordPress doesn’t have a built-in scheduler to run regular tasks, so to get around this it fires off a request to process `wp-cron.php` every time a visitor requests a page.

There are a couple of issues with this, firstly on busy sites this means this cron task will be running all the time - when it really doesn’t need to.

*   On a small website with a few pages and a few hundred visitors a day `wp-cron.php` isn't a problem, but imagine a larger website with maybe a 100 visitors an hour. If each visitor reads your home page, and 2 others, that would mean that `wp-cron.php` is being called 300 times an hour, 7200 times a day. Plus, on a busy/large website `wp-cron.php` might take a few minutes to run.  
    Multiple copies of `wp-cron.php` can be started at once as well, because people don't wait in line to view your web pages! This means that more memory is needlessly consumed. It all snowballs into a horrible resource hog.  
    We've seen some busy sites running multiple instances of `wp-cron.php` tasks consuming over 200Mb of virtual memory each - not an efficient use of resources.
*   This flip side though can be just as problematic - if your site is well optimised and most of the page requests are being served from cache the request to process `wp-cron.php` may not happen as often as you’d like.

There is a solution, in both these cases - disable the WordPress CRON and setup a Onyx CRON job on a schedule you control.

Both disabling the WordPress Internal CRON and setting up an Onyx CRON can be done via the **Cron jobs** option

![](https://storage.crisp.chat/users/helpdesk/website/57f30d3e8268fc00/6790ebe7-155f-4628-86ef-e5fa05_1ffg9b6.png)

### Disable the WordPress Internal CRON and setup the replacement Onyx CRON

Click the **Disable WordPress Internal Cron** button.

![](https://storage.crisp.chat/users/helpdesk/website/b250f0e39b53b000/6adbd97a-8069-4b4f-8059-09fb23_e06tet.png)

Once it completes, you'll see a banner with a click here link to set up the replacement Onyx CRON.

![](https://storage.crisp.chat/users/helpdesk/website/9dca57c59f6f7000/ff666d80-34bb-4552-968a-b222bc_r44z0e.png)

Click the **click here** link.

You'll see the New Cron job screen with the command to execute pre-filled as WordPress Internal Cron.

![](https://storage.crisp.chat/users/helpdesk/website/37bac3f5f9781c00/9284c17d-820d-43f0-8745-30701e_e99bzh.png)

You have some pre-sets you can select for the schedule by clicking the Hourly, Daily, Weekly and Monthly buttons.

How frequently you configure the WordPress Cron to run is site dependant - if you're running a busy shopping site you may want it to run every 5 minutes to process orders. Whereas if you just have a nightly backup scheduled you could run the Cron once a day to trigger the backup.

You can manually enter each field:

**Minute**: 0 - 59

**Hour**: 0 - 23

**Day of month**: 1 - 31

**Month**: 1 - 12

**Day of week**: 0 - 6 (Sunday to Saturday)

* in any field means Every (minute, hour, day of month, month, day of week)

Once you've configured your desired schedule click **Create Cron Job**.

* * *

* * *