The Missed Schedule Problem
The way WordPress handles scheduling is that whenever a page is loaded, either from your blog or in your admin control panel, the file wp-cron.php is loaded. At normal, if correctly configured, the server can talk to itself just fine and WordPress scheduling system will works perfectly. It’s only when you start doing strange and weird things like not having DNS setup properly or blocking loopback connections then it will cause you problems. It is possible that certain web hosts are not allowing WordPress cron jobs to run.
Publish a bunch of future posts noticed that they won't publish and when time comes to go live they just turn Missed Schedule. Took a look at the WordPress code and noticed future posts get assigned a cronjob
($unix_time_stamp, 'publish_future_post', array($post_ID)) wp_schedule_single_event.
Dealing with WordPress Missed Schedule
If you are scheduling blog posts in WordPress and seeing a "Missed Schedule" message, it's likely caused by an issue with your web server, or it is WordPress that is causing the problem of your blog posts not being posted as scheduled. This is an annoying problem. However, there is a very simple fix that is easy to do. The "Missed Schedule" problem seems to point to the web server and WordPress. The "time/date" comparison needs to match in order for your blog posts to get published as scheduled.
How to Work Plugin WP Missed Schedule?
Why don't you just look at the database and publish all posts with future status and date in past?
My plugin WP Missed Shcedule looks for posts with a date in the past that still have
post_status=future. It will take each
post_ID and publish wp_publish_post it.
This plugin will check every 5 minutes, if there are posts that match the problem described.
To not use too many resources, it fix for 5 items per session, one session every 5 minutes
All others failed will be solved in future sessions, until no longer exist.
When you activate this plugin the first 5 "Missed Scheduled Future Posts" are fixed immediately. All others are fixed the next batch.
On some case (rare?) are also fixed live. If you have "Missed Scheduled Future Posts" after this plugin is activated, is not one error or bug: wait the next checking. If "Missed Scheduled Future Posts" persist, verify that WordPress installation is clean, or exist conflict with other plugins.
N.B. If have active others plugins with the same functions of "WP Missed Schedule" this is on conflict and not work. I suggest to delete or deactivate all others, clean related database options table, and use only "WP Missed Schedule". In the same way "WP Missed Schedule" could create conflicts with other plugins with the same functions. In this case, delete or disable it and only used the others.