zoukankan      html  css  js  c++  java
  • Wordpress 去除重复评论限制

    在wordpress中,已经默认加入了重复评论的限制,如果需要去掉这个限制,需要修改相应的源代码,具体如下:

    wp-includes 文件夹下面 comment.php

    function wp_allow_comment($commentdata) {
        
    global $wpdb;
        
    extract($commentdata, EXTR_SKIP);

        
    // Simple duplicate check
        // expected_slashed ($comment_post_ID, $comment_author, $comment_author_email, $comment_content)

        $dupe = "SELECT comment_ID FROM $wpdb->comments WHERE comment_post_ID = '$comment_post_ID' AND comment_approved != 'trash' AND ( comment_author = '$comment_author";
        
    if ( $comment_author_email )
            
    $dupe .= "OR comment_author_email = '$comment_author_email";
        
    $dupe .= ") AND comment_content = '$comment_content' LIMIT 1";
    //    if ( $wpdb->get_var($dupe) ) {
    //        do_action( 'comment_duplicate_trigger', $commentdata );
    //        if ( defined('DOING_AJAX') )
    //            die( __('Duplicate comment detected; it looks as though you’ve already said that!') );

    //        wp_die( __('Duplicate comment detected; it looks as though you’ve already said that!') );
    //    }


        do_action( 
    'check_comment_flood', $comment_author_IP, $comment_author_email, $comment_date_gmt );

        
    if ( isset($user_id&& $user_id) {
            
    $userdata = get_userdata($user_id);
            
    $user = new WP_User($user_id);
            
    $post_author = $wpdb->get_var($wpdb->prepare("SELECT post_author FROM $wpdb->posts WHERE ID = %d LIMIT 1", $comment_post_ID));
        }

        
    if ( isset($userdata&& ( $user_id == $post_author || $user->has_cap('moderate_comments') ) ) {
            
    // The author and the admins get respect.
            $approved = 1;
         } 
    else {
            
    // Everyone else's comments will be checked.
            if ( check_comment($comment_author, $comment_author_email, $comment_author_url, $comment_content, $comment_author_IP, $comment_agent, $comment_type) )
                
    $approved = 1;
            
    else
                
    $approved = 0;
            
    if ( wp_blacklist_check($comment_author, $comment_author_email, $comment_author_url, $comment_content, $comment_author_IP, $comment_agent) )
                
    $approved = 'spam';
        }

        
    $approved = apply_filters( 'pre_comment_approved', $approved, $commentdata );
        
    return $approved;
    }

     去掉下面部分即可

    //    if ( $wpdb->get_var($dupe) ) {
    //        do_action( 'comment_duplicate_trigger', $commentdata );
    //        if ( defined('DOING_AJAX') )
    //            die( __('Duplicate comment detected; it looks as though you’ve already said that!') );

    //        wp_die( __('Duplicate comment detected; it looks as though you’ve already said that!') );
    //    }

    PS:修改前先记得备份哦

  • 相关阅读:
    Window安装Redis并设置为开机启动
    大佬为你揭秘微信支付的系统架构,你想知道的都在这里了
    想要设计自己的微服务?看这篇文章就对了
    破局人工智能:构建AI,与腾讯云一起探索语音应用场景
    巧用机器学习定位云服务器故障
    重磅发布 | 黑镜调查:深渊背后的真相之「DDoS 威胁与黑灰产业调查报告」
    5分钟内看懂机器学习和深度学习的区别
    如何防范和应对Redis勒索,腾讯云教你出招
    Redis勒索事件爆发,如何避免从删库到跑路?
    作为一个编程新手,我再也不怕Flink迷了我的眼!
  • 原文地址:https://www.cnblogs.com/stormlly/p/2152049.html
Copyright © 2011-2022 走看看