远方的海
远方的海,WordPress,免费
2014 Aug 09 23 : 35

WordPress 非插件高效防止垃圾评论

您当前的位置: 首页 > WordPress > 正文
欢迎光临远方的海!您可能还对 WordPress建站免费资源最新IT动态 感兴趣,点击开启 悦读 模式。CTRL+D 快捷收藏本文,我们期待您再次光临!

还在用wordpress自带的akismet来防止垃圾评论吗?Out啦,akismet这个插件会在评论处加载一个js代码,而且貌似还蛮大?但是去了这个插件也是蛋疼,几乎天天各种迷幻药啊,机械,博彩,英文,日文的广告就满天飞了。

现在推荐一个非插件的Wordpress反垃圾代码,这个代码圈内叫做小墙,我的原则是能省一个插件就省一个插件,打开页面的速度像风一样,不但对自己来说是一种享受,而且也能提高搜索引擎的好感。这个代码还是来自Willin Kan,把以下代码粘贴到functions.php里面即可:

<?php
/* -----------------------------------------------
<<小牆>> Anti-Spam v1.8 by Willin Kan.
*/
//建立
class anti_spam {
function anti_spam() {
if ( !current_user_can('level_0') ) {
add_action('template_redirect', array($this, 'w_tb'), 1);
add_action('init', array($this, 'gate'), 1);
add_action('preprocess_comment', array($this, 'sink'), 1);
} }
//設欄位
function w_tb() {
if ( is_singular() ) {
ob_start(create_function('$input','return preg_replace("#textarea(.*?)name=([\"\'])comment([\"\'])(.+)/textarea>#",
"textarea$1name=$2w$3$4/textarea><textarea name=\"comment\" cols=\"100%\" rows=\"4\" style=\"display:none\"></textarea>",$input);') );
} }
//檢查
function gate() {
( !empty($_POST['w']) && empty($_POST['comment']) ) ?
$_POST['comment'] = $_POST['w'] : $_POST['spam_confirmed'] = 1;
}
//處理
function sink( $comment ) {
if ( !empty($_POST['spam_confirmed']) ) {
//方法一:直接擋掉, 將 die(); 前面兩斜線刪除即可.
//die();
//方法二:標記為spam, 留在資料庫檢查是否誤判.
add_filter('pre_comment_approved', create_function('','return "spam";'));
$is_ping = in_array( $comment['comment_type'], array('pingback', 'trackback') );
$comment['comment_content'] = ( $is_ping ) ?
"◎ 這是 Pingback/Trackback, 小牆懷疑這可能是 Spam!\n" . $comment['comment_content'] :
"[ 小牆判斷這是Spam! ]\n" . $comment['comment_content'];
}
return $comment;
} }
$anti_spam = new anti_spam();
// -- END ---------------------------------------- 
?>

再看看你的垃圾评论还在吗?反正我是没有垃圾评论了~

好文!分享给朋友,或者点个赞吧~

文章信息

分类:WordPress

您可能也会喜欢

发表回复

Post Comment


  1. 老鹰 :

    百度了一下,有好多BUG,不知修复了没

    2014-8-13
  2. 老鹰 :

    好文章,果断分享了!

    2014-8-13
  3. xnces :

    博主是和WordPress插件有仇么?看了一下文章基本都是WordPress非插件XXX,我的小站是推荐WordPress插件的,欢迎回踩

    2014-8-10
    • 远方的海水神 :

      哈哈,当然那些不添加js和css请求的插件也是我的爱!!!我正在你那取经呢

      2014-8-10
    • 老鹰 :

      个人感觉是:相对与一些小站来说,太多的插件会影响其打开速度,从而造成用户的流失。

      2014-8-13
  4. JV :

    不错。

    2014-8-10
    • 远方的海水神 :

      我也去你的博客转转了,背景音乐挺有感觉的~

      2014-8-10
      • 远方的海水神 :

        不过多开几个页面音乐会混在一起。

        2014-8-10