publish_post操作与预期不符

时间:2011-12-02 19:56:40

标签: wordpress

当使用publish_post操作(创建|更新)帖子时,我尝试使用wp_mail

奇怪的是它在im编辑和现有帖子时工作正常,即所有$ post对象都可以使用以下方法检索:

$post = get_post($post_id);

但是当我在新帖子上使用它时它没有帖子对象???

我可以使用全局$ _POST来获取变量,但这会使代码膨胀,检查它是否存在。

我也尝试了其他动作(save_post | wp_insert_post | publish_post-type)

有没有人有这个?

1 个答案:

答案 0 :(得分:0)

您应该为publish_post方法添加一个监听器:

add_action('publish_post','do_whatever');

function do_whatever(){
    //what do you do
}

或者,如果您尝试以OO方式对其进行编码,则可以:

include 'MyObj.php';
$my_obj = new MyObj();

add_action('publish_post', array($my_obj, 'do_whatever'));

//in your object php
class MyObj{
   function do_whatever(){
    //what do you do
   }
}

注意:此设置会在您保存/自动保存发布时进行do_whatever调用。你必须为自己的紫癜做额外的编码。

我们很清楚知道您想要达到的目的是为了向您提供更多信息。