WordPress 主題下載站,從建站到現在,每天都被垃圾評論煩惱著,最近無奈抽出時間百度相關資料,現在整理出一些方法來對付 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 垃圾評論,各位看管,自行選擇哈!!