WordPress 限制一段时间内用户的最大评论数量

144次阅读
没有评论

共计 938 个字符,预计需要花费 3 分钟才能阅读完成。

如果一段时间内用户有大量的评论,基本可以认为是垃圾评论,使用 wordpress 对其进行限制,可以将以下代码添加到 function.php。

10 分钟内最多评论 10条,代码如下:

// 10 分钟评论不能大于 10 条
function limit_user_comments_per_ten_minutes( $comment_data ) {
    global $wpdb;

    $current_user = wp_get_current_user();
    $user_id = $current_user->ID;

    $count = $wpdb->get_var( $wpdb->prepare(
        "SELECT COUNT(*) FROM $wpdb->comments
        WHERE user_id = %d
        AND comment_date > DATE_SUB(NOW(), INTERVAL 10 MINUTE)",
        $user_id
    ) );

    if ( $count >= 10 ) {
        wp_die( '您已经达到了10分钟内评论的最大限制。' );
    }

    return $comment_data;
}

add_filter( 'preprocess_comment', 'limit_user_comments_per_ten_minutes' );

一小时内最多评论 10条,代码如下:

function limit_user_comments_per_hour( $comment_data ) {
    global $wpdb;

    $current_user = wp_get_current_user();
    $user_id = $current_user->ID;

    $count = $wpdb->get_var( $wpdb->prepare(
        "SELECT COUNT(*) FROM $wpdb->comments
        WHERE comment_author_email = %s
        AND comment_date > DATE_SUB(NOW(), INTERVAL 1 HOUR)",
        $comment_data['comment_author_email'],
        $_SERVER['REMOTE_ADDR']
    ) );

    if ( $count >= 20 ) {
        wp_die( '您已达到每小时评论的最大限制。' );
    }

    return $comment_data;
}

提醒:本文发布于387天前,文中所关联的信息可能已发生改变,请知悉!

AD:【腾讯云服务器大降价】2核4G 222元/3年 1核2G 38元/年
正文完
 
阿蛮君
版权声明:本站原创文章,由 阿蛮君 2023-03-08发表,共计938字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)
Copyright © 2022-2024 阿蛮君博客 湘ICP备2023001393号
本网站由 亿信互联 提供云计算服务 | 无忧云 提供安全防护和加速服务