为 WordPress 评论功能增加字数长度限制

  • 12
  • 246人已阅
  • A+
所属分类:WP建设
摘要

近来发现,有些读者在我的博客留言都是仅仅为了一个外链,随便发个“好文章”“顶一个”“加油”这样毫无意义的评论;而有些评论字数又超长了,特别是一些垃圾评论,毫无意义的,对别的读者阅读感受也有影响。今天在龙笑天博客找到了解决方法。

为 WordPress 评论功能增加字数长度限制

这个功能其实实现起来很简单,只要利用好 WordPress 为我们提供的 preprocess_comment 钩子即可,使用这个钩子可以实现对评论内容的各种处理,不管是过滤评论中的恶意链接还是处理特定的垃圾评论,通过 preprocess_comment 钩子我们都可以实现。

将下面的代码添加到当前 WordPress 主题的 functions.php 文件:

/**
* 为WordPress评论功能增加字数长度限制 - 龙笑天下
* https://www.ilxtx.com/limit-wordpress-comment-length.html
*/
function lxtx_set_comments_length($commentdata) {
    $minCommentlength = 5; //最少字數限制,建议设置为5-10个字
    $maxCommentlength = 220; //最多字數限制,建议设置为150-200个字
    $pointCommentlength = mb_strlen($commentdata['comment_content'],'UTF8'); //mb_strlen 一个中文字符当做一个长度
    if ( ($pointCommentlength < $minCommentlength) && !is_user_logged_in() ){
    err('抱歉,您的评论字数过少,最少输入' . $minCommentlength .'个字(目前字数:'. $pointCommentlength .')【登录后无此限制】');
    exit;
    }
    if ( ($pointCommentlength > $maxCommentlength) && !is_user_logged_in() ){
    err('抱歉,您的评论字数过多,最多输入' . $maxCommentlength .'个字(目前字数:'. $pointCommentlength .')【登录后无此限制】');
    exit;
    }
    return $commentdata;
}
add_filter('preprocess_comment', 'lxtx_set_comments_length');

即可实现对评论字数进行控制。(代码来自龙笑天博客

 

 

weinxin
我的QQ
这是我的QQ扫一扫
avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:12   其中:访客  6   博主  6

    • avatar 杨景文 来自天朝的朋友 谷歌浏览器 Windows 10 北京市 移动 5

      220个字,按我这个话痨来看,应该绰绰有余了,似乎没人比我更啰嗦。 :razz:

        • avatar 青山 博主 来自天朝的朋友 搜狗浏览器 Windows 7 江西省萍乡市 电信

          @杨景文 有的,你看我那篇市长的小说,下面有人直接粘贴了

        • avatar 梁兴健 来自天朝的朋友 谷歌浏览器 Windows 7 中国 移动 5

          有时候我还挺怀念那种类似于“文章不错”的评论,因为他们必须要访问了我的网站才能给我评论,也就是直接地给我增加了一个ip的流量 :mrgreen:

            • avatar 青山 博主 来自天朝的朋友 搜狗浏览器 Windows 7 江西省萍乡市 电信

              @梁兴健 这个想法挺好的

            • avatar 久伴博客 来自天朝的朋友 谷歌浏览器 Windows 7 湖北省武汉市 电信 2

              字数限制我觉得必要性不大,可以防止一些人刷屏

                • avatar 青山 博主 来自天朝的朋友 搜狗浏览器 Windows 7 江西省萍乡市 电信

                  @久伴博客 防止刷屏,咋还必要性不大呢 :shock:

                • avatar 懿古今 来自天朝的朋友 谷歌浏览器 Windows 7 广西南宁市 电信 4

                  那种纯粹是几个字的评论,一般都是直接禁止评论或者变成垃圾评论,不过增加字数限制还是很有用的

                  • avatar nice 来自天朝的朋友 Safari浏览器 iPad OS 11_4_1 like Mac OS X) AppleWebKit 广东省东莞市 (南城区)电信 2

                    因为不知道说点什么才会说来过,留个脚印,加油!诸如此类。。

                      • avatar 青山 博主 来自天朝的朋友 搜狗浏览器 Windows 7 江西省萍乡市 电信

                        @nice 即便有人是这种想法,但是我觉得不灌水式的留言更好 :mrgreen:

                      • avatar 喃小柯 来自天朝的朋友 QQ浏览器  Redmi Note 3 Build/MMB29M 湖北省武汉市 电信 1

                        所以以后灌水就要评论像我这样标准二十字了

                          • avatar 青山 博主 来自天朝的朋友 搜狗浏览器 Windows 7 江西省萍乡市 电信

                            @喃小柯 很标准哈哈。