TRANSPECTION_POST_STATUS不适用于批量更新

时间:2017-07-27 作者:squarecandy

我已成功设置了一个操作,该操作在自定义帖子类型从“挂起”状态移动到“发布”状态时执行。当您单独更改帖子状态时,一切都会按预期进行(按单个帖子编辑页面上的“发布”按钮)。

但是,当对自定义帖子类型使用概述页面上的批量操作时,项目成功地从挂起移动到发布,但下面的代码不会执行。

即使通过批量更新更改了状态,如何确保执行此代码?

function bang30_publish_pending_response( $new_status, $old_status, $post )
{
  // Check if we are transitioning from pending to publish
  if ( $old_status == \'pending\'  &&  $new_status == \'publish\' ) {

    // thank you email to the user.
    $email = \'demo@example.com\';
    $first_name = \'John\';
    $last_name = \'Doe\';
    $to = $first_name . \' \' . $last_name . \'<\' . $email . \'>\';
    $subject = \'Thanks for your submission to CanLand!\';
    $message = \'Your submission to canland.org has been published.
    You can now view it online and share what you created with your friends:
    \' . get_permalink($post);

    wp_mail($to,$subject,$message);

  }
}
add_action(  \'transition_post_status\', \'bang30_publish_pending_response\', 10, 3 );
编辑:

nevermind-我的问题是如何正确使用$post对象。

二者都transition_post_statuspending_to_publish 正在为这种姜黄状态工作。

1 个回复
SO网友:Nuno Sarmento

将操作更改为pending\\u to\\u publish。

add_action(  \'pending_to_publish\', \'bang30_publish_pending_response\', 10, 3 );

结束

相关推荐

Custom bulk_action

我想向自定义帖子类型添加自定义批量操作。我碰到了过滤器bulk_actions-screenid, 根据其documentation, 完全按照我的意愿去做。然而,经过大约两个小时的调试,我发现了以下评论// This filter can currently only be used to remove actions. 在wp类列表的第278行。php-太棒了!我想我可以通过使用jQuery将操作作为选项注入来破解它/** * Hack to add a custom bulk action