服务器之家

服务器之家 > 正文

WordPress 防止恶意评论的方法

时间:2019-09-19 17:23     来源/作者:WordPress教程网

即使你的博客管理后台的管理员身份被人破解了,一般他也不会同时破解你的网站空间ftp账号,所以他也更改不了你的网站文件,你可以更改WordPress源文件代码过滤评论,这样不管是谁的评论都过滤一遍。打开当前使用的主题目录下的functions.php,在将第一个 <?php 替换成:

复制代码

代码如下:


<?php
function ludou_code_escape( $incoming_comment ) {
$incoming_comment = htmlspecialchars($incoming_comment, ENT_QUOTES);
return $incoming_comment;
}
add_filter( 'comment_text', 'ludou_code_escape' );
add_filter( 'comment_text_rss', 'ludou_code_escape' ); 


以上方法是将评论内容中的代码转义,这样浏览器就不解释这部分代码了,代码也不会起任何作用,并且可以直接看到评论中的代码。这么改的好处是可以在评论中展示代码,另外可以看看到底哪些人在评论中添加了恶意代码,点此查看效果。如果你希望去除所有代码标签,只留下文字内容,请将以上代码改成:

复制代码

代码如下:


<?php
function ludou_code_escape( $incoming_comment ) {
$incoming_comment = strip_tags($incoming_comment);
return $incoming_comment;
}
add_filter( 'comment_text', 'ludou_code_escape' );
add_filter( 'comment_text_rss', 'ludou_code_escape' ); 


关于strip_tags过滤函数
定义和用法
strip_tags() 函数剥去 HTML、XML 以及 PHP 的标签。
语法
strip_tags(string,allow)参数 描述 
string 必需。规定要检查的字符串。 
allow 可选。规定允许的标签。这些标签不会被删除。 
提示和注释
注释:该函数始终会剥离 HTML 注释。这点无法通过 allow 参数改变。

复制代码

代码如下:


<?php
echo strip_tags("Hello <b>world!</b>");
?> 


输出:
Hello world!
以上内容在WordPress 2.9.2中测试,其他版本就留给你自己去测试了,基本上都差不多!补充一点,WordPress会不会转义评论内容,不仅由WordPress源程序决定,而且可以在主题或插件中控制。

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字
抖音撒撒累累是什么歌 撒撒累累张艺兴歌曲名字 2019-06-05
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部