From the WP admin, I'm able to schedule posts to appear in the future, and wp-cron.php does it's thing and updates post_status for those posts to 'publish'.
However, I'm writing an app that writes posts to the WP database outside of the WP admin. Nothing sinister, just a productivity booster ;o)
So, when I write a future post to the database via my externel script, wp-cron.php just will not set this post to 'publish' at all. The post simply continues to sit in the DB with a post_status of 'future', and will not display on the site, even though the publish date has passed. And passed. And passed.
I can't for the life of me see why wp-cron.php works for posts that are entered through the admin, and WON'T work for posts that are entered via an external script - even though both posts have virtually identical entries in the DB.
So, my question is: how does wp-cron.php work, and how can the script distinguish between posts that have been entered via the admin, and posts that have been entered by an external script, 'cos I can't tell the bleedin' difference between 'em!!