如果备注更新为批准状态,如何刷新“发布上次修改时间”?

时间:2020-03-17 作者:user184418

我阅读了另一个问题,并尝试了粘贴在下面的代码-Update post date on every new comment?

这段代码运行良好,但它会更新人们在前端插入注释的时间。我寻求的是更新管理员在后端批准评论的时间。

我读了另一个问题,试图用建议的钩子替换,但没有成功-Approve comment hook?

add_action(\'wp_insert_comment\',\'update_post_time\',99,2);
function update_post_time($comment_id, $comment_object) {
    // Get the post\'s ID
    $post_id = $comment_object->comment_post_ID;
    // Double check for post\'s ID, since this value is mandatory in wp_update_post()
    if ($post_id) {
        // Get the current time
        $time = current_time(\'mysql\');
        // Form an array of data to be updated
        $post_data = array(
            \'ID\'           => $post_id, 
            \'post_modified\'   => $time, 
            \'post_modified_gmt\' =>  get_gmt_from_date( $time )
        );
        // Update the post
        wp_update_post( $post_data );
    }
}

1 个回复
SO网友:Mikhail

这很简单,您可以使用不同的钩子来执行相同的操作。

add_action( \'comment_approved_\', \'update_post_time\', 99, 2); // this will fire when comment is approved regardless of comment type 
动作名称中的最后一个下划线很重要comment_approved_ 如果您需要将审批挂钩到特定的注释类型,通常在它转到注释类型之后。

看见https://core.trac.wordpress.org/browser/trunk/src/wp-includes/comment.php#L1748

相关推荐

Comments.php保留评论日期/时间,但删除日期/时间的#超级链接

我在谷歌上搜索了这个问题,似乎找不到解决方案。。。在评论中,我试图从评论日期/时间中删除超链接,当您将鼠标悬停在评论日期上方时,它会将超链接(示例/#comment-210)链接到以下评论。。。我可以在函数中输入什么。php删除链接,我想保留日期/时间文本。。