用于草稿的定制后调度器

时间:2013-09-17 作者:busyjax

我每天都有很多帖子要发表。现在,我正在考虑安排我保存为草稿的所有帖子。因此,我尝试创建一个自定义的后期调度程序。这是我试过的,

$time = strtotime(\'+5 min\');  

$args = array(\'post_type\' => \'post\',\'post_status\' => \'draft\');                  
$draft_posts = get_posts( $args );

foreach($draft_posts as $posts) {
$my_post = array(
      \'ID\'           => $posts->ID,
      \'post_date\'    => date(\'Y-m-d H:i:s\', $time),
      \'post_status\'  => \'future\');
$my_post->edit_date = true;
wp_update_post( $my_post );
$time += 5400;                                   // every 1.5 hr
}
我一运行这个程序,所有草稿就会立即同时发布,而不是每隔1.5小时发布一次。谁能告诉我问题出在哪里吗?

1 个回复
最合适的回答,由SO网友:Stephen Harris 整理而成

你在治疗$my_post 作为数组,然后作为对象。尝试将“edit\\u date”移动到数组中。

还要记住,“post\\u date”应该在博客的时区中。date 将给出UTC时区中的日期时间。看见date_i18n() (法典:http://codex.wordpress.org/Function_Reference/date_i18n).

从我看来,其他一切都是正确的。

结束

相关推荐

POSTS_WHERE失败,查询中有多个自定义字段

单独查询这两个字段中的任何一个都会得到预期的结果(显示帖子)。但是,当这两个字段都包含在查询中时(例如下面的示例中显示的“foo”和“bar”),则不会显示帖子。function do_stuff( ) { global $wpdb; return \" AND ($wpdb->postmeta.meta_key = \'foo\' AND $wpdb->postmeta.meta_value = \'1\')