我一直知道 WordPress 博客下访客是可以冒充博主发表/回复评论的,只要你知道博主的邮箱地址即可,但我一直懒得去加,因为开此博至今2年多几乎没有人在我这冒充博主发表/回复评论。
情人节前夜,不知道万戈是否耐不住寂寞还是为了即将来临的“爱要死”兴奋不己,特意来测试冒充一回(冒充评论可以点这里去围观一下),让我感觉到有点怕怕:要是某天不是万戈而是超兴奋的spammer冒充一回不就要删到手软?于是我觉得还是加上这段“防止访客冒充博主发表评论”的代码比较好,防范于未然总是比较好的。
我记得我很早就收藏过这段代码(却不知道哪里出的了,去搜一下,一大把,个个都没说出自哪里……囧~),但是使用效果有点变态:可以防止访客冒充博主了,不过切把已经登陆的博主也禁止了,囧~这就是没有测试直接 Copy 代码的结果。
那么分析代码,原代码结构如下:
// 防止访客冒充博主发表评论, 原出处: ? 知道者/原作者请告知一声 function z_user_check($incoming_comment) { $isSpam = 0; if ( trim($incoming_comment['comment_author']) == '这里填博主昵称' ) $isSpam = 1; if ( trim($incoming_comment['comment_author_email']) == '这里填博主邮箱') $isSpam = 1; if(!$isSpam) return $incoming_comment; wp_die('请勿冒充博主发表评论!'); } global $user_ID; if(intval($user_ID) == 0) add_filter( 'preprocess_comment', 'z_user_check' );
或许是引用变量 $user_ID 的问题,于是我改为如下,华丽的解决了:
// 防止访客冒充博主发表评论, 原出处: ? edit by zwwooooo function z_user_check($incoming_comment) { global $user_ID; $isSpam = 0; if ( strtolower(trim($incoming_comment['comment_author'])) == '这里填博主昵称' ) $isSpam = 1; if ( strtolower(trim($incoming_comment['comment_author_email'])) == '这里填博主邮箱') $isSpam = 1; if (!$isSpam || intval($user_ID) > 0) { return $incoming_comment; } else { wp_die('请勿冒充博主发表评论!'); } } add_filter( 'preprocess_comment', 'z_user_check' );
折腾完,隐~
2011.2.17 Update:加入大小写验证。
zww
赏
oooo
or
- 本文标题:还是加上了“防止访客冒充博主发表评论”
- 本文链接:https://zww.me/archives/25392
- 发布时间:2011年02月16日 13:07
- 版权声明:除非注明,文章均为 zwwooooo 原创,转载请以链接形式标明本文地址!
哈哈 以後就不怕別人冒認了 謝謝博主分享··
@小俊
稍微可以减少麻烦
是加在那个文件下!!?
@Tiger
主题的functions.php
@zwwooooo
万分感谢
@Tiger
厄,你太客气了
没人提这个的时候,大家都没想到去冒充
有人弄出来了,好事者也出来了
@reizhi
的确如此
好东西,拿下~
额,我用上了以后提交后出错了鸟,样式貌似出问题了?zww哥有空麻烦去试一下吧~
@奚少
样式错误是你的主题问题(错误提示那部分)。
@zwwooooo
嗯,好了,我用了willin大师的ajax评论,用了他的提示代码,把wp_die改成err(__好了。
@奚少
解决就好
谢谢博主的这个方法
这样也行啊。。
我就懒得去整了。反正没什么所谓
貌似原文出处在WP中文论坛?
@爱惜
一般不需要去整,呵呵
试试
收藏了,等发现有人冒充我了就拿来用,哈哈!
@秦大少
哈,一般很少人会这么无聊
很久没出来 冒个泡 哈哈
@久酷
的确是好久,看来你相当、不是一般地忙!
哈哈 冒充博主 这个创意不错
@7cbt
其实很无聊
反正我博客也没几个人看,不管他,不过手机访问你网站还挺快的呢!
不过文章开头的那个中副广告,好影响手机浏览哦,期待手机浏览版!!!!!
@jalena
我特意关了手机访问插件,看看能否实现手机访问无广告?哈哈哈
@zwwooooo
我黑莓自带的浏览器访问你网站效果全有,广告也一个不差
@jalena
我说看看先,看能否实现而已。
呵呵。又可以折腾了。
@Demon
无折腾不WP嘛
@zwwooooo
过几天来折腾一下。这阵子累死了
应该没这个必要吧。
@杨宇成
对,可有可无。
至今还没遇到过……
@C瓜哥
那最好
貌似很有用。。
@iCodon
有点用吧
哈哈 果断mark上 感觉有用!
@球犯
遇到无聊人士时有用,一般没用,哈哈
已经加入了折腾完了
@Demon
简单吧,哈哈
@zwwooooo
呵呵。不错弄完测试了一下。还真不是用其它的ID来发表了
@Demon
一般不太需要,加上也无妨。
我比较懒...经常不登陆直接回复评论的...
@EIIE
一般情况下不需要。