当我发布一篇新文章时,(当我更新已发布文章时),wordpress钩子是什么?

问题描述:

我想发送一封电子邮件一个新的职位是第一次发表任何时间(而不是当它被编辑)当我发布一篇新文章时,(当我更新已发布文章时),wordpress钩子是什么?

我想:

add_action('publish_post', 'postPublished'); 

但postPublished是当我更新已发布的帖子也被称为。 我只是想在第一时间发布一个帖子才能得到它叫做

问候

+0

你可以检查后 – vico

我认为你正在寻找的钩draft_to_publish

如果你是想只在一个新的岗位,我会考虑在帖子的发布目标发送电子邮件。你甚至可以看看transition_post_status挂钩,只是实现条件,如果帖子被编辑了,这样的事情可能工作:

function so_post_40744782($new_status, $old_status, $post) { 
    if ($new_status == 'publish' && $old_status != 'publish') { 
     $author = "foobar"; 
     $message = "We wanted to notify you a new post has been published."; 
     wp_mail($author, "New Post Published", $message); 
    } 
} 
add_action('transition_post_status', 'so_post_40744782', 10, 3); 
+0

的ID这将是在那里我开始为好。这里有一些关于它的更多信息:https://codex.wordpress.org/Post_Status_Transitions – AndyWarren

+1

@AndyWarren我只是在想这个,并做了一个编辑。 –

+0

这些参数是什么:'so_post_40744782',10,3? – yarek

你应该以充分理解问题读取来自WordPress的法典Post Status Transitions

覆盖大多数情况下,比如,一个可能的解决方案是:

add_action('draft_to_publish', 'postPublished'); 
add_action('future_to_publish', 'postPublished'); 
add_action('private_to_publish', 'postPublished');