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

很多wordpress站长都经常受到垃圾评论的滋扰,针对这种情况,采用下面的代码可能会对你有所帮助。将以下代码加入到functions.PHP页面中。使用时任何包含在$bad_comment_content数组内的字符,都将会被自动拒绝留言。

PHPcode7">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主题的时候,由于菜单样式的要求我...
很多朋友在做wordpree主题制作的时候会经常遇到一个问题,那...
wordpress后台的模块很多,但并不是每个都经常用到。介绍几段...
从WordPress4.2版本开始,如果我们在MYSQL5.1版本数据中导出...
很多网友会遇到这样一个问题,就是WordPress网站上传图片、附...
对于经常要在文章中出现代码的IT相关博客,安装一个代码高亮...