Improve WordPress performance and reliability by disabling default wp-cron and using scheduled cron instead

by | Performance, WordPress

WP-Cron handles your websites scheduled tasks.

In the world of WordPress, the default wp-cron system plays a crucial role in handling scheduled tasks such as publishing scheduled posts, checking for updates, and performing various maintenance tasks. However, this built-in functionality can be resource-intensive, leading to performance issues, especially on sites with heavy traffic. To address this, many WordPress experts recommend disabling the default wp-cron and replacing it with a scheduled cron system. In this article, we will explore the reasons why you should consider making this switch, the benefits it offers, and the step-by-step process to implement it on your WordPress website.

Why Disable Default wp-cron?

By default, WordPress relies on wp-cron to execute scheduled tasks. The wp-cron system triggers tasks every time a page is requested, even if the scheduled task isn’t due yet. This “pseudo-cron” approach might not be problematic for low-traffic websites. However, on busy sites, it can lead to performance bottlenecks, increased server load, and a delay in task execution. Moreover, if your website experiences frequent downtime or low server resources, the wp-cron system might not work as expected, leading to missed or delayed tasks.

Disable wp-cron for better WordPress Performance

The Benefits of Using Scheduled Cron

Switching from the default wp-cron to a scheduled cron system offers several advantages:

a. Improved Performance: By using a scheduled cron job, you can decouple the task execution from user requests. This way, your site’s performance won’t be negatively impacted by recurring tasks.

b. Accurate Task Execution: With a scheduled cron, tasks are executed precisely at the specified time, reducing the risk of missed or delayed tasks that might occur with wp-cron.

c. Reduced Server Load: Scheduled cron allows you to run tasks during low-traffic periods, reducing the burden on your server during peak hours.

d. Better Resource Management: By controlling when tasks run, you can optimize resource allocation, ensuring critical tasks have the necessary resources for smooth execution.

Steps to Disable Default wp-cron and Set Up Scheduled Cron

Before proceeding, it’s essential to create a backup of your website to avoid any potential issues. Follow these steps to disable default wp-cron and set up a scheduled cron:

Step 1: Access Your Website’s Files

Use an FTP client or your hosting provider’s file manager to access your website’s root directory.

Step 2: Edit wp-config.php

Open the wp-config.php file located in your website’s root directory using a text editor. Add the following line of code just before the “That’s all, stop editing! Happy blogging” line:

define('DISABLE_WP_CRON', true);

This code disables the default wp-cron system.

Disable wp-cron for better WordPress Performance

Step 3: Set Up a Cron Job

Now, you need to create a scheduled cron job on your server to replace the default wp-cron functionality. Access your hosting control panel and look for the “Cron Jobs” or “Scheduled Tasks” option.

Create a new cron job with the following command:

wget -q -O - http://www.yourwebsiteaddress.com/wp-cron.php >/dev/null 2>&1

Replace “www.yourwebsiteaddress.com” with your actual website URL. This command triggers WordPress cron and ensures scheduled tasks run at the specified intervals.

Step 4: Adjust the Schedule (Optional)

You can customize the cron schedule according to your website’s needs. For example, to run the cron job every 30 minutes.  I recommend running the cron no more frequently once per hour unless you have a lot of scheduled tasks or need very regular updates via wp-cron. 

Disabling the default wp-cron system and implementing a scheduled cron job can significantly improve your WordPress site’s performance, reliability, and resource management. By ensuring timely execution of tasks and reducing server load, you can provide a better user experience to your website visitors. Follow the steps outlined in this article to make the transition seamlessly and enjoy the benefits of a more efficient WordPress site.

Pay Now

$

Your Cart

No Item Found
Subtotal $0.00
Shipping $0.00
Tax $0.00
Total $0.00
0