Some Chinese Please 插件能夠攔截不帶中文字的留言,以前本博客一直在用效果不錯,不寫入數據庫,可有效地減小 spam 對服務器的無謂使用,其實能夠將插件簡化一下,直接用代碼實現。將下面代碼加到主題functions模板文件中,效果與使用插件相同。ajax
/* refused spam */ function refused_spam_comments( $comment_data ) { $pattern = '/[一-龥]/u'; if(!preg_match($pattern,$comment_data['comment_content'])) { wp_die('評論必須含中文!'); } return( $comment_data ); } add_filter('preprocess_comment','refused_spam_comments');
注:若是使用的是 HotNews 主題,請將 wp_die 替換爲 err,不然顯示錯誤信息時,會形成模版錯位,其它使用 ajax 評論的主題也可參照修改。數據庫
其它一些寫入數據庫的防 spam 插件不建議使用, 好比 WordPress 官方的防垃圾插件 Akismet 會在數據庫中留下大量的信息,增長服務器負擔。服務器
針對那些使用技術手段,好比 GET、POST 等方式不填寫前臺表單,直接讀取後臺程序文件的 spam,只有屏蔽IP才能緩解瘋狗同樣的攻勢,其它什麼驗證碼、滑動解鎖等等都沒用。spa
能夠在.htaccess文件中添加:插件
Order Deny,Allow Deny from xxx.xxx.xxx.xx Deny from xxx.xxx.xxx.xx
禁止某些IP訪問。code