WordPress实现自动拒绝垃圾评论的方法
WordPress实现自动拒绝垃圾评论的方法
发布时间:2016-12-23 来源:查字典编辑
摘要:很多WordPress站长都经常受到垃圾评论的滋扰,针对这种情况,采用下面的代码可能会对你有所帮助。将以下代码加入到functions.ph...

很多WordPress站长都经常受到垃圾评论的滋扰,针对这种情况,采用下面的代码可能会对你有所帮助。

将以下代码加入到functions.php页面中。

使用时任何包含在$bad_comment_content数组内的字符,都将会被自动拒绝留言。

function in_comment_post_like($string, $array) {

foreach($array as $ref) { if(strstr($string, $ref)) { return true; } }

return false;

}

function drop_bad_comments() {

if (!empty($_POST['comment'])) {

$post_comment_content = $_POST['comment'];

$lower_case_comment = strtolower($_POST['comment']);

$bad_comment_content = array(

'viagra',

'hydrocodone',

'hair loss',

'xanax',

'tramadol',

'russian girls',

'russian brides',

'lorazepam',

'adderall',

'dexadrine',

'no prescription',

'oxycontin',

'without a prescription',

'sex pics',

'family incest',

'online casinos',

'online dating',

'cialis',

'best forex',

'amoxicillin'

);

if (in_comment_post_like($lower_case_comment, $bad_comment_content)) {

$comment_box_text = wordwrap(trim($post_comment_content), 80, "n ", true);

$txtdrop = fopen('/var/log/httpd/wp_post-logger/nullamatix.com-text-area_dropped.txt', 'a');

fwrite($txtdrop, " --------------n [COMMENT] = " . $post_comment_content . "n --------------n");

fwrite($txtdrop, " [SOURCE_IP] = " . $_SERVER['REMOTE_ADDR'] . " @ " . date("F j, Y, g:i a") . "n");

fwrite($txtdrop, " [USERAGENT] = " . $_SERVER['HTTP_USER_AGENT'] . "n");

fwrite($txtdrop, " [REFERER ] = " . $_SERVER['HTTP_REFERER'] . "n");

fwrite($txtdrop, " [FILE_NAME] = " . $_SERVER['SCRIPT_NAME'] . " - [REQ_URI] = " . $_SERVER['REQUEST_URI'] . "n");

fwrite($txtdrop, '--------------**********------------------'."n");

header("HTTP/1.1 406 Not Acceptable");

header("Status: 406 Not Acceptable");

header("Connection: Close");

wp_die( __('bang bang.') );

}

}

}

add_action('init', 'drop_bad_comments');

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新WordPress学习
热门WordPress学习
CMS教程子分类