wordpress 防止恶意评论的方法

发布时间:2021-01-03编辑:脚本学堂
本文介绍下,在WordPress中用于防止恶意评论的一段代码,学习下wordpress防止恶意发表评论的方法,感兴趣的朋友参考学习下。

本节内容:
wordpress 防止恶意评论

更改WordPress源文件代码过滤评论,对所有评论都过滤一遍。

打开当前使用的主题目录下的functions.php,在将第一个 <?php 替换成:
 

复制代码 代码示例:
<?php
function ludou_code_escape( $incoming_comment ) {
$incoming_comment = htmlspecialchars($incoming_comment, ENT_QUOTES);
return $incoming_comment;
} // www.jb200.com
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;
} // www.jb200.com
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源程序决定,而且可以在主题或插件中控制。