← Back To The Blog

Updated October 22, 2026 · 2 min read

How to Disable WP-Cron and Set Up a cPanel Cron Job

Colourful programming code on a screen

To replace visitor-triggered WP-Cron, configure a working server schedule and disable WordPress’s automatic trigger. Do both together: disabling the trigger alone can leave scheduled tasks waiting.

Before You Change the Scheduler

Back up wp-config.php and check whether your host already schedules WordPress tasks. Avoid adding a second job for the same installation. Note which tasks matter to your site—scheduled posts, backups or plugin jobs—and how quickly they need to run.

Changing the scheduler is not a guaranteed speed fix. If a plugin job is expensive or failing, investigate that job rather than assuming a new hosting plan will solve it.

Create the Replacement Job in cPanel

Open Cron Jobs in cPanel. Choose the interval and enter a command using absolute paths. Ask support to confirm the PHP executable and your WordPress directory. For example, replace both placeholders below with the confirmed paths:

/absolute/path/to/php -q /home/USERNAME/public_html/wp-cron.php

If WordPress is in a subdirectory, include it in the path. Keep error output available during testing. Allow each run to finish before the next starts; overlapping jobs can increase server load. See cPanel’s Cron Jobs documentation.

Disable the Visitor-Triggered WP-Cron

Once the replacement is ready, add this line to wp-config.php before WordPress is loaded, normally above the “stop editing” comment. Edit an existing definition instead of adding a duplicate:

define( 'DISABLE_WP_CRON', true );

This stops the automatic visitor-triggered scheduler; it does not delete scheduled events. The replacement job must call wp-cron.php. WordPress describes this approach in its system task scheduler guide.

How Often Should the Job Run?

Choose an interval based on the tasks your site needs and your host’s permitted frequency. A daily run is unsuitable when tasks must happen within minutes. An interval such as five minutes is only an example—not a universal setting. Check your plugins’ scheduling requirements and whether jobs finish within the interval.

Test It Before You Leave

  • Schedule a test post and confirm that it publishes after a scheduled run.
  • Check the next expected backup or plugin task.
  • Review cron email or logs for path, permission and PHP errors.
  • If tasks stop, correct the replacement job or restore the previous configuration while investigating. Avoid leaving two schedulers active.

Send support the affected domain, expected task, scheduled time and error message. Do not include passwords in ordinary email.

Need Help With Your WordPress Hosting?

Our WordPress Hosting plans include cPanel, LiteSpeed caching, SSD storage and backups. Already a customer? Open a ticket with your scheduling issue before changing plans.

Keep exploring.