[技術] WordPress 的垃圾留言 綿延不絕 ~~

當你自己架的 WordPress 有為數眾多的 垃圾留言時,  不但版面不甚美觀, 而且也讓瀏覽者覺得 這個網站好像沒有善盡管理責任.

筆者自己架的 wordpress 內容管理系統, 有些 單篇文章 的 垃圾 comment, 可能多達七頁之多 !  令人困擾.
筆者建議 管理者可以在 functions.php 加入程式, 以杜絕垃圾留言:
WP Anti Spam 小牆 1.84

它的作法, 無法杜絕 pingback 的垃圾, 如果你願意, 可以關閉 這個選項: 允許其他網誌站台對文章發送引用及通告(Trackback 及 Pingback)

不然, 可以在:

if ( in_array( $comment[‘comment_type’], array(‘pingback’, ‘trackback’) ) )
return $comment;

做一些判斷, 只讓有中文的 pingback 通過, 全英文的 pingback 歸為垃圾:

 $commentStr = $comment['comment_content'];
    $pattern = '/[一-龥]/u';

    if(!preg_match_all($pattern, $commentStr, $match)){
        die();
    }else{
        return $comment;
    }

舉一反三, 如果要讓評論 comment 也是必須包含中文字 (通常很有效), 則自行加入下面區段:
<?php
function scp_comment_post($comment) {
   $pattern = '/[一-龥]/u';

if(!preg_match($pattern, $comment[‘comment_content’])) {
wp_die( “您的意見中必須包括中文字!" );
}
return( $comment);
}
add_filter(‘preprocess_comment’, ’scp_comment_post’);

 

網頁設計,程式設計

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s