Curious if anyone else is having the same issue. I have never been able to get my scheduled posts to work since I switched to WordPress with 2.7. I have done all of the updates, and even tried disabling plugins, etc. I know others were having this issue in 2.7, and had read it would be fixed/ chron files and such. However, it still does not work. I have a regular wordpress.com blog as well – but scheduled posts work just fine over there. This is becoming problematic with how we post blogs and guest blogs….any suggestions?
I recently scheduled about 5 posts to be published at a rate of 1-per-day on one of my 2.8.2 blogs and had no problems at all. They all appeared on schedule. Have you tried deactivating all plugins to see if this resolves the problem?
Yes I have (deactivated all plugins) – I just updated to 2.8.3 yesterday – so let me try again.
Nope – deactivating everything and still not working – 2.8.3 so most updated version.
I have tried everything from the historical posts within my knowledge and no luck..??
Having the same issue since 2.7.
On top of that, when I try to schedule a post that contains just a picture, it sticks the picture in the wrong place and screws up the formatting of the post.
Well 2.8.4 does not solve this either. I wish wordpress would fix this….
I’m not convinced that it is a WordPress problem. Not had any problem scheduling multiple posts on any of my blogs. Culprits are more likely to be:
– mis-configured themes
– older plugins (even inactive plugins can continue to cause problems
– server configuration
Short answer: Add this to the to defines in your wp-config.php file:
Really long answer, for masochists: Scheduled posts are not now, and have never been, “broken”. The developers of WordPress cannot fix it because there is nothing to fix.
The problem lies in the fact that your server, for some reason, cannot properly execute the wp-cron process. This process is WordPress’ timing mechanism, it handles everything from scheduled posts to sending pingbacks to XMLRPC pings, etc.
The way it works is pretty simple. Whenever a WordPress page loads, internally WordPress checks to see if it needs to fire off wp-cron (by comparing the current time with the last time wp-cron ran). If it does need to run wp-cron, then it tries to make an HTTP connection back to itself, calling the wp-cron.php file.
This connection back to itself is there for a reason. wp-cron has a lot of work to do, and that work takes time. Delaying the user seeing his webpage while it does a bunch of stuff is a bad idea, so by making that connection back to itself, it can run the wp-cron program in a separate process. Since WordPress itself doesn’t care about the result of the wp-cron, it only waits a second, then goes back to rendering the webpage for the user. Meanwhile, wp-cron, having been launched, does its work until it’s finished or it runs out of execution time.
That HTTP connection is where some badly configured systems fail. Basically, WordPress is acting like a web browser. If your site was http://example.com/blog, then WP will call http://example.com/blog/wp-cron.php to start the process. However, some servers simply can’t do that for some reason. Among the possible reasons:
– Server doesn’t have DNS, and so it can’t figure out who “example.com” is, even though it is *itself*.
– Server administrators, in a misguided attempt at security, have blocked “loopback” requests, so it can’t actually make a call back to itself.
– Server is running something called “mod_security” or similar, which actively blocks the call due to brain-dead configuration.
– Something else.
The point is that for whatever reason, your web server is configured in some non-standard way that is preventing WordPress from doing its job. WordPress simply can’t fix that.
However, if you have this condition, there is a workaround. Add this to the to defines in your wp-config.php file:
This alternate method uses a redirection approach, which makes the users browser get a redirect when the cron needs to run, so that they come back to the site immediately while cron continues to run in the connection they just dropped. This method is a bit iffy sometimes, which is why it’s not the default.
Really long answer, for masochists
That’s me labelled then…
Thanks for the explanation. I just knew something was interrupting the wp-cron process but didn’t know enough about the whys and wherefores to pin it down. Duly bookmarked so I can pass this on in future.
Well it took quite a bit of time to get this figured out – I had to wait until traffic was at it’s lowest point to deactivate all the plugins and reactivate them one at a time to find the culprit…..
For me it turned out to be the Podpress plugin (from MightySeek)…..
It’s a huge bummer because it appears to be no longer in development so it looks like I’m going to have to replace it with some other similar plugin…
Thanks again for your help, esmi – if you have any suggestions on a replacement podcast plugin I’m all ears!
UPDATE: I updated the Podpress plugin and all seems to be working fine now – I had not upgraded it before because I had heard (and read) rumors that it was not compatible with 2.8, and since the older version was working fine (or seemed to be) with 2.8 I decided to leave it alone – since it was causing my problems, and I thought I’d have to replace it, I figured it wouldn’t hurt anything to try upgrading it….lo and behold the newest version of Podpress (8.8.1) seems to be fine.
Thanks – took a few minutes – the first try didn’t work – but the server eventually recognized the change.
Sorry for yet another post, but I understand why this define is not the preferred method. I scheduled a post last night for early this morning, and nothing. I then scheduled the same draft for a couple of minutes in the future and it was again not published.
Is there any other possible workaround?
I recently upgraded to version 2.9, when the problem surfaced for the first time (no problems with 2.8.x). I deactived all plugins and scheduled a post for in a minute, but the post was not published. As soon as I ran wp-cron.php manually it was published. Before asking my hosting company is there a way to detect which plugin might cause the problem? I am using
- Askiment 2.2.7
- Event Calendar 3.1.4
- Event Calendar Widget 3.1.4
- NextGEN Gallery 1.4.3
So not too many.
The error_log file shows no entries regarding a problem with wp-cron.php. Where else could I look if there is in fact a problem with any of the plugins I installed?
Thanks for a short answer in advance.
Cron is broken in 2.9. See http://www.semiologic.com/2009/12/21/wp-2-9-three-bugs-and-how-to-fix-them/
Thanks for your reply. After uploading the three files of the patch the scheduling mechanism is working again. Thanks for the “pointer”.
In 2.9 I have discover that I cannot schedule posts and I can not update, edit or add categories.
One of my categories is misspelled. and can not change it. How embarrassing.
Can’t schedule any post. I get the message after the scheduled time “missed scheduled post”. Then the only way I can post it is to change it to pending post, wait a few minutes, refresh, then publish. If I try to publish immediately, it won’t allow it.
I don’t have Podpress plugin (from MightySeek) as a plugin. I do not have any inactive plugs, until I deactivated as a test. I have deactivated the new plugins since the 2.9 update, but it didn’t help.
My blog is not “http://example.com/blog” it is “http://blog.com”.
Where am I suppose to “Add this to the to defines in your wp-config.php file:
I know nothing about coding so don’t know where exactly to insert this in the wp-config.php file.
I just noticed the link to semilogic. I try the patches first and come back to let you
- The topic ‘scheduled posts still not working in 2.8.2 ??’ is closed to new replies.