提交评论后,是否有任何过滤器用于显示消息“您的评论正在等待审核”?

时间:2019-04-10 10:13:31

标签: wordpress hook

我在单个页面上有一个评论表单,该表单接受注册用户或已登录用户的评论,但是对于未登录用户,它将等待审核。因此,我想在提交评论后显示一条消息,即“您的评论正在等待审核”,以便可以通知他们。

我正在使用一个钩子向登录用户显示消息,如下所示:

add_action( 'set_comment_cookies', function( $comment, $user ) {
setcookie( 'ta_comment_wait_approval', '1' );
}, 10, 2 );

add_action( 'init', function() {
    if( $_COOKIE['ta_comment_wait_approval'] === '1' ) {
        setcookie( 'ta_comment_wait_approval', null, time() - 3600, '/' );
        add_action( 'comment_form_before', function() {
            echo "<p id='wait_approval' style='padding-top: 80px;'><strong>Your comment has been sent successfully.</strong></p>";
        });
    }
});

add_filter( 'comment_post_redirect', function( $location, $comment ) {
    $location = get_permalink( $comment->comment_post_ID ) . '#wait_approval';
    return $location;
}, 10, 2 );

我想做的是,我还想向提交评论时未获批准的用户显示消息,那么是否有钩子可以向未登录的用户显示此消息?

  

更新

有一个非常奇怪的事情,我在测试时注意到,当我登录chrome然后以隐身模式打开时,不会显示任何消息,但是当我从chrome中退出时,如果我提交注释,然后显示成功消息,并且还显示注释“消息正在审核”,这可能是真正的问题,有什么办法可以纠正?可能是Cookie造成了此类问题?

0 个答案:

没有答案