检测首次创建自定义帖子的时间

时间:2017-04-11 作者:apoorv

我有一个自定义的post type no\\u resume,当在其中创建一个新的post并为其分配一个job\\u类别的meta时,我想执行一个功能,在该功能中,邮件将发送给数据库中具有该类别的所有用户。

我试过了save_postpublish_post 并检查数据库中是否存在meta,但在添加meta之前保存post会引发火灾。我只想在创建新帖子时执行该功能,而不是在更新帖子时执行该功能。

2 个回复
SO网友:Stender

您可以看到所有wordpress操作挂钩here - 我建议您查看类似“updated\\u Posteta”或类似内容

SO网友:Martin

您可以使用(status)\\u(post\\u类型)挂钩。在发布特定CPT时,查询是否存在任何其他相同类型的对象。如果没有,那么这是你的第一篇此类帖子。

add_action(\'publish_my_custom_post_type\',function() {
    $posts = get_posts(array(
        \'post_type\' => \'my_custom_post_type\',
    ));

    if(!empty($posts)):
        return; //There are posts of this type so we just return
    endif;

    //...Do what you want here
}

相关推荐

Can't publish new posts

我一直在与客户端合作,将站点迁移到新的主机提供商。我手动迁移了db,遇到了一个我以前从未见过的问题。我可以编辑所有现有帖子,但当我尝试创建新帖子时,在Permalink字段的“在此处输入标题”下,我看到:Permalink:?预览=真当我发布或保存草稿时,我收到:对不起,您不允许编辑此帖子。此外,在帖子上,没有预览按钮。为尝试修复而采取的步骤:我打开了WP\\u debug,这对这个问题没有什么帮助。我把主题切换到2017年,看看是否有主题冲突发生,没有帮助。切换主题后,我禁用了所有插件,没有帮助。我将w