最后更新时间为 2018年8月3日
WordPress默认的评论采用邮箱+昵称的方式,并调取gravatar头像作为用户标识。这样一样来,如果不法分子知道了管理员的邮箱就可以在站点冒充管理员进行评论,极有可能给网站带来损害,此类评论的危害程度要远高于垃圾评论,必须采取手段予以制止。
我们只需要在配置一段代码就可以轻松让冒充管理员的人无法提交评论,将如下代码放入主题模板函数functions.php里。
//禁止冒充管理员评论
function usercheck($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;
err('你咋不上天呢?还敢冒充管理员!');
}
if(!is_user_logged_in())
add_filter( 'preprocess_comment', 'usercheck' );
请将代码中昵称和邮箱地址更换为你的站点管理员信息即可,如有能力可以在主题后台写入管理员信息选项,然后在上面代码中调取,不赘述!
配置后,非管理员登陆状态下使用管理员名称或邮箱都会有错误提示!
代码仅仅是在用户评论的时候进行一次判断,并不请求数据库,所以对资源的消耗是有限的,是一段非常不错的代码。
此后管理员进行评论就必须要登陆才可,这样在一定程度上提高了网站安全。