WordPress has a handy feature that allows you to schedule blog posts. But what do you do when your blog posts start missing their schedule?
The scheduling feature is something we, and our clients, use regularly because it allows you to make sure posts go out at a time when you may be busy. When blog posts begin missing their schedule it can be frustrating because you may not have time to check and publish it until a few hours later.
Let’s take a look at why WordPress posts may miss their schedule and how you can fix this.
Why do blog posts sometimes miss their schedule in WordPress?
To understand this you need to know a little bit about cron jobs. A cron job is something that runs on your website’s server and is a timer to make sure that things happen when they should do.
WordPress doesn’t use a normal cron job because it doesn’t always have access to a server. So it uses a virtual cron called WP-Cron. This gets loaded every time a page on your website or blog is loaded. When a page is loaded, the WP-Cron will run and check to see if something needs doing. Such as a blog post needs publishing.
The problem here is that since WP-Cron only runs when a page is loaded. Blog posts can miss their schedules if a page isn’t loaded around the time it’s due to be published.
For example: if you publish a blog post to go live at 9am but no one visits your website until 11am, it won’t be published until 11am.
There are other reasons why a blog post may miss its schedule. Such as bugs in WordPress, conflicts with plugins, issues with the server or database, or the wrong time zone being selected in the settings.
What can I do to stop WordPress posts missing their schedule?
There are three things that can be done to prevent blog posts from missing their schedule.
The first thing you should do is check the time is correct in your website’s / blog’s settings.
It may be that your website is set up in the wrong time zone. You’re expecting to see a blog post go live at 9am but WordPress is using a time zone a few hours behind the zone you’re in.
To check the time in your WordPress settings, go to ‘Settings’ and click ‘General’. Halfway down the page, you will see ‘Time zone’ which lets you choose which time zone you’re in.
Don’t worry if you live in a country that uses daylight saving. WordPress will automatically update when the clocks go back or forward.
If WordPress is using the right time zone, you then have two options. Both will do the same job, but it really depends on your resources and skills:
- Install a free plugin
- Set up a real cron
This is the easiest option of the two. There are plenty of free plugins available for preventing blog posts from missing their schedule.
They work by checking your blog every few minutes and when they spot a post which has missed schedule, they’ll publish it.
These plugins are easy enough to install and don’t require any technical know-how. Which means you can install them and have them working in a matter of minutes.
Set up a real WordPress cron
As we mentioned at the top of the post, WordPress doesn’t use a real cron job. However, you can set up a real cron job and disable WP-cron, though disabling it isn’t necessary.
Setting up a cron will require access to your server control panel. While it’s not too difficult to do you may not feel comfortable doing it. If that’s the case, get in touch with your web developer who will be able to do it for you.
Church Themes offer a good walkthrough and explanation about what to do. Again, speak to your web developer if you’re unsure. Depending on your hosting company and the level of support you get, they may also be able to do this for you.