添加发布日期不会插入新发布

时间:2015-01-13 作者:Hassan Ali

$postdate = \'2010-02-23 18:57:33\';   
$postData = array(
   \'post_title\' => $attachment->post_title,
   \'post_type\' => \'post\',
   \'post_content\' => $image_tag . $attachment->post_title,
   \'post_category\' => array(\'0\'),
   \'post_status\' => \'publish\',
   \'post_date\' => $postdate
);
$post_id = wp_insert_post($postData);
添加后post_date, 新帖子不再创建

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

您的代码是正确的。我已经对它进行了测试,它很有效。我想你遗漏了什么,而我在测试时遗漏了什么(因为这个错误,我的头撞到了墙上),就是这些帖子没有出现在你的帖子列表的顶部。

请记住,默认情况下,帖子是根据帖子日期进行排序和排序的,最新的帖子首先显示,最旧的帖子最后显示。这些新帖子不是新帖子,而是根据发布日期计算为旧帖子。所以,记住这一点,你需要浏览你的帖子列表并寻找这些帖子。

如果需要测试是否插入了帖子,请转储$post_id. 这应该返回一个post ID

$postdate = \'2014-02-23 18:57:33\';   
$postData = array(
    \'post_title\' => $attachment->post_title,
    \'post_type\' => \'post\',
    \'post_content\' => $image_tag . $attachment->post_title,
    \'post_category\' => array(\'0\'),
    \'post_status\' => \'publish\',
    \'post_date\' => $postdate
);
$post_id = wp_insert_post($postData);
?><pre><?php var_dump($post_id); ?></pre><?php  

结束

相关推荐

如何使用过滤器钩子POSTS_JOIN来查询POSTS_WHERE中的分类术语?

在过去的几个小时里,我一直在尝试使用过滤器挂钩posts_where 和posts_join 要根据分类法术语搜索帖子,在本例中,分类法为“category”,术语为“politics”这是我尝试的结果,结果是一个空查询:这条线在钩子里posts_where$where .= \" OR ($wpdb->term_taxonomy.taxonomy IN (\'category\') AND $wpdb->terms.name = \'politics\')\"; 这就是我用来连接不