‘TRANSPORT_POST_STATUS’仅在按“添加新项”时触发

时间:2016-06-30 作者:fab5

我想在发布新帖子(cpt)时启动一个函数。

function my_publish( $new_status, $old_status, $post ) {
    if ( $new_status == \'publish\' && \'publish\' !== $old_status ) {
          // do s.th.
    }
    debug_to_console( $post );
}
add_action( \'transition_post_status\', \'my_publish\', 10, 3 );
因此,当我点击“Add New”(添加新)按钮时,该函数被激发,我使用$post 所容纳之物就这样。

该功能不会再次启动。无论是在我发布帖子时,还是在更新帖子或更改帖子状态时。

我还尝试了其他常见的钩子,如:

add_action(\'future_to_publish\', \'my_publish\');
add_action(\'new_to_publish\', \'my_publish\');
add_action(\'draft_to_publish\' ,\'my_publish\');
add_action(\'auto-draft_to_publish\' ,\'my_publish\');
他们什么都没做。

过去几天我做了很多研究,尝试了很多不同的解决方案,但都没有帮助我克服这个问题。。。有什么想法吗?

1 个回复
SO网友:Charlie Baker

当您在后端发布帖子时,这将起到一定作用。

function my_publish( $post_id ) {
   if ( ( $_POST[\'post_status\'] === \'publish\' ) && ( $_POST[\'original_post_status\'] != \'publish\' ) ) {
     error_log(\'WordPress would be better if it did not use Google Fonts.  Looking forward to the system fonts.\');
   }
}
add_action( \'publish_yourCustomPostType\', \'my_publish\', 10, 3 );

相关推荐

如何修改WP_INCLUDE/BLOCKS/LATEST_posts.php

我是WordPress开发的初学者,希望得到一些帮助。我在一个简单的WordPress网站上工作。基本上,用户希望在主页上显示最新的帖子。我使用了最新帖子块,并将其设置为显示整个帖子内容,现在用户不希望帖子标题链接到单个帖子页面(因为帖子的内容显示在主页上)。如何安全地修改模板文件,使其像h2标记一样使用,而不是在主题中使用的href标记。我知道您可以创建子主题并修改wp_content 文件,但我不确定如何处理中的文件wp_include. 我读到一些关于修改functions.php 但我不确定,如果