仅在发布新帖子时采取行动

时间:2013-04-10 13:31:07

标签: wordpress

我正在为自己编写插件,我需要在发布新帖子时启动一些功能。到目前为止,我发现http://codex.wordpress.org/Post_Status_Transitions表示每对状态都有动作。我想知道应该触发哪个动作功能。我尝试new_to_publish(没有关闭)和draft_to_publish(按预期工作)和auto-draft_to_publish(工作一半意图。能够从全局变量获取ID(以获取链接) get_permalink())但标题(在post变量中)设置为Auto Draft而不是实际标题。 所以问题是,我应该采取什么行动?我认为它应该是auto-draft_to_publishdraft_to_publish,但我想知道如何获得实际的标题而不是自动草稿

2 个答案:

答案 0 :(得分:1)

使用publish_post和publish_future_post操作。

正如您所料,这些帖子在发布时以及在设置为未来日期时被触发发布时会触发。

编辑:

要确保发布帖子,请检查修改日期和发布日期。

function publishing_post( $post_id ) {
  $post = get_post( $post_id );

    if( $post->post_modified <> $post->post_date ) return;

}

答案 1 :(得分:0)

我决定使用auto-draft_to_publishdraft_to_publish。首先发布全新帖子,第二次发布时草稿发布。我一开始并没有注意到两个都传递了$ post变量(我第一次使用全局$ post导致了“Auto Draft”标题)。 有了这个我的问题解决了。