從建站到現在,每天都被垃圾評論煩惱着,最近無奈抽出時間百度相關資料,現在整理出一些方法來對付 WordPress 主題垃圾評論的方法!有相同問題的 WordPress 主題主題
愛好者們可以嘗試一下哈!
首先我們分析下 WordPress 主題垃圾評論主要有哪些形式存在着

一、很多鏈接,一看就知道是一些垃圾評論,裏面出現了 http: 、 href 、等鏈接標籤
於是,應對此操作的最有效方式就是禁止評論裏帶有 http: 、 href 等字眼的出現!
操作方法:到主題文件根目錄下找到 functions.php 文件,打開文件 (編寫代碼請用代碼軟件編寫,禁止用記事本,極易編碼出錯)
在文件最下面的 ?> 前面粘貼下面的代碼
- function lianyue_comment_post( $incoming_comment ) {
- $http = ‘/[<|=|.|友|夜|KTV|ッ|の|ン|優|業|グ|貿|]/u’;
- if(preg_match($http, $incoming_comment[‘comment_content’])) {
- wp_die( “ 萬惡的發貼機!” );
- }
- return( $incoming_comment );
- }
- add_filter(‘preprocess_comment’, ‘lianyue_comment_post’);
其中灰色代碼位置就是屏蔽的字段,可以自定義自己要屏蔽的!本站也整理了一些相關的可以屏蔽的詞
例如:
- |<|=|.|友|夜|KTV|ッ|の|ン|優|業|グ|貿|
這些詞也經常在 WordPress 主題垃圾評論中出現,加入進上面的灰色位置裏即可!
二、 WordPress 主題垃圾評論裏有很多的英文,幾乎全英文的
我們可以設置為評論內容裏必須包含漢字,至少在國內這樣的操作是合理的吧!
操作方法同樣是打開 functions.php 文件,然後添加一下代碼:
- function lianyue_comment_post( $incoming_comment ) {
- $pattern = ‘/[一-龥]/u’;
- // 禁止全英文評論
- if(!preg_match($pattern, $incoming_comment[‘comment_content’])) {
- wp_die( “ 您的評論中必須包含漢字,否則將被視為發貼機!” );
- }
- return( $incoming_comment );
- }
- add_filter(‘preprocess_comment’, ‘lianyue_comment_post’);
上面的代碼的意思就是説,評論內必須包含漢字,否則評論將不通過!
目前從這兩點可以從根本上遏制垃圾評論的出現,上面兩個手段都想用的朋友可以使用下面的代碼,我做了下整合處理,效果就是必須包含中文字符和不準包含指定字符的代碼!
- /* 評論必須有中文和禁止某些字段出現 */
- function lianyue_comment_post( $incoming_comment ) {
- $pattern = ‘/[一-龥]/u’;
- $http = ‘/[<|=|.|友|夜|KTV|ッ|の|ン|優|業|グ|貿|]/u’;
- // 禁止全英文評論
- if(!preg_match($pattern, $incoming_comment[‘comment_content’])) {
- wp_die( “ 您的評論中必須包含漢字,否則將被視為發貼機!” );
- }elseif(preg_match($http, $incoming_comment[‘comment_content’])) {
- wp_die( “ 萬惡的發貼機,這裏不允許放鏈接,如需交換鏈接請聯繫站長!” );
- }
- return( $incoming_comment );
- }
- add_filter(‘preprocess_comment’, ‘lianyue_comment_post’);
這樣的措施是為了避免垃圾評論裏又有中文,又有鏈接的存在,所謂限制的更全面,有些朋友會説,那那些換友鏈的怎麼辦? 我只能説,魚與熊掌不能兼得,至少目前以換友情鏈接為目地的垃圾評論也很多,他們根本就沒想和你換,僅僅是一個外鏈的存在着!
考慮到有些 WordPress 主題主題使用了 ajax 評論,提示錯誤時可能會出現佈局混亂,解決辦法:
打開 comments-ajax.php 找到最後個 err( __(並
在下一行增加:
- $pattern = ‘/[一-龥]/u’;
- if (!preg_match($pattern,$comment_content) )
- err( __(‘ 您的評論中必須包含漢字,否則將被視為發貼機!’) );
- $http = ‘/[<|=|.|友|夜|KTV|ッ|の|ン|優|業|グ|貿|]/u’;
- if (preg_match($http,$comment_content) )
- err( __(‘ 萬惡的發貼機,這裏不允許放鏈接,如需交換鏈接請聯繫站長!’) );
每個 WordPress 主題主題的 ajax 評論都不一樣,請參閲後自行修改!
以上是通過代碼,十分簡易的實現了防止 WordPress 主題垃圾評論的措施,當然也有很多的插件可以完成,最簡單的插件就是多説插件,又美觀評論又可以抵擋 WordPress 主題垃圾評論,各位看管,自行選擇哈!!