【问题标题】:Wordpress increase number of previously approved commentWordpress 增加了先前批准的评论数量
【发布时间】:2021-06-03 17:57:18
【问题描述】:

在 Wordpress -> 设置 -> 讨论中有一个参数叫"Comment author must have a previously approved comment"

用户必须在评论之前获得批准才能自动批准之后的 cmets。如何增加这个参数,这意味着用户必须有 5 条评论才被批准?

谢谢

【问题讨论】:

    标签: wordpress comments


    【解决方案1】:

    在你的functions.php中使用下面的代码sn-p 根据Comment author must have a previously approved comment的值,检查用户是否有5条评论被批准。如果不是,则返回 false,否则返回 true。

    function pre_comment_approved_callback($approved, $commentdata){
    global $wpdb;
        $author = $commentdata['comment_author'];
        $email = $commentdata['comment_author_email'];
        $comment_type = $commentdata['comment_type'];
        $mod_keys = trim( get_option( 'moderation_keys' ) );
    
        if ( 1 == get_option( 'comment_previously_approved' ) ) {
            if ( 'trackback' !== $comment_type && 'pingback' !== $comment_type && '' !== $author && '' !== $email ) {
                $comment_user = get_user_by( 'email', wp_unslash( $email ) );
                if ( ! empty( $comment_user->ID ) ) {
                    $ok_to_comment = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(comment_approved) FROM $wpdb->comments WHERE user_id = %d AND comment_approved = '1' LIMIT 5", $comment_user->ID ) );
                } else {
                    // expected_slashed ($author, $email)
                    $ok_to_comment = $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(comment_approved) FROM $wpdb->comments WHERE comment_author = %s AND comment_author_email = %s and comment_approved = '1' LIMIT 5", $author, $email ) );
                }
                
                if ( ( 5 == $ok_to_comment ) &&
                    ( empty( $mod_keys ) || false === strpos( $email, $mod_keys ) ) ) {
                        return true;
                } else {
                    return false;
                }
            } else {
                return false;
            }
        }
    
        return $approved;
    }
    add_filter('pre_comment_approved', 'pre_comment_approved_callback', 10, 2);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-06
      • 2012-12-21
      • 1970-01-01
      • 1970-01-01
      • 2012-02-04
      • 2011-11-19
      • 1970-01-01
      相关资源
      最近更新 更多