致力于为用户提供真实的
主机测评数据及优惠信息

WordPress实现自动拒绝垃圾评论的方法

很多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');
赞(0) 打赏
未经允许不得转载:爱主机 » WordPress实现自动拒绝垃圾评论的方法
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址