把光学软件啊什么的地址全都删掉了~ sorry~

腾讯微博 twitter 你好,欢迎光临! 

Category Archives: wordpress

12款wordpress代码高亮插件

2011.12.19 , , 2 Comments , 7,982 views

If you have ever tried to display code within a post you will know all about the problems this can cause. That is why there are some amazing developers who create plugins to make that solve this niggly issue.
Which is the best? I have been using Code Markup, it is simple to use and displays the code just the way I wanted it. To be honest, they are all good, it just depends on your needs.

Make sure that the WYSIWYG editor is disabled, in most cases these plugins will not work with these types of plugins.
Some plugins haven’t been tested all the way up to version 2.7 but,the chances are that they will work.

WP Advanced Code Editor WP Plugin

Plugin URL : WP Advanced Code Editor.
Description : WP Advanced Code Editor integrates the EasyArea advanced code editor into wordpress. This adds real time syntax highlighting, line numbering, full screen editing, and more to the code editor in the “Add New Post” and “Add New Page” screens.
WP Compatibility : 2.3 – 2.7.
Note : Make sure that the WYSIWYG editor is disabled, the plugin is not compatible with the WYSIWYG editor.

WP Advanced Code Editor Screenshot (Admin View)

WP Code Plugin Screenshot

WordPress管理员密码忘记了怎么办?上传一个文件or删除一个符号

2011.12.19 , , 2 Comments , 3,080 views

删除一个符号

上图,大家都明白的:

修改wp-includes/user.php 文件line 110

if ( !wp_check_password($password, $userdata->user_pass, $userdata->ID) )
去掉“非”符号即可,变成:
if ( wp_check_password($password, $userdata->user_pass, $userdata->ID) )
修改完后速度进后台修改完密码再改回去即可。

上传一个文件

先上传passwd.php这个重置wp用户密码的文件到wp根目录(与wp-config.php同级别的目录),这个文件可以修改wp任何用户的密码(不适用于WPMU!)。

//页面验证密码生成: 访问 passwd.php?getp=你的密码 获取加密后的密码(用于密码重置页面验证用户身份)
// 默认密码test
//访问passwd.php页面,请输入 passwd.php?p=明文密码
//如 passwd.php?p=test

如果显示:
Good luck,your password has been modified. 表示修改OK了,可以删除此重置密码文件了。

via:http://ihacklog.com/php/wordpress/wpskills/simple-solution-to-modifying-wordpress-admin-password-when-your-have-forgot-it.html

彻底反垃圾评论之战:WP Anti Spam + Spam To Blacklist

2011.10.17 , , 21 Comments , 7,852 views

其实我一直对spam还是蛮好的,只要你能过我的akismet我就不会删,对滴,这个插件也算蛮强大了的,但是这个插件有时候会把应该留着的也归到spam里面。。。然后我每次都还得去看看,然后一些被归进去的spam一大堆一大堆的链接。。。找不是spam的还也烦的~~所以,那天正好看见这样一个插件-Spam To Blacklist,就随便用上了。

这年头 Spam(垃圾评论)越来越猖獗,在我们使用的 wordpress 平台亦是如此。

当然,万能的 WordPress 对付 Spam 的方法也有很多。
个人并不喜欢使用验证码、算术题之类的,那虽然很有效,但会给评论者造成麻烦。
而评论审核则会影响体验,仅在离开较长时间才会打开。

再此分享一下我的反垃圾评论方案:免插件的WP Anti Spam + Spam To Blacklist 插件。

wordpress 反垃圾评论

这是两个月内收到的 Spam,该清理了~

WP Anti Spam 小墙,免插件的反 Spam 方案

我之前一直是用着 wp 自带的 Akismet ,使用黑名单机制,但无论对机器还是人肉 Spam 都很不错,还能自动学习。
不过时不时会把一些正常的评论误杀了,导致经常要跑去检查垃圾评论- -。

后来发现了这个 WP Anti Spam ,昵称小墙是免插件拦截垃圾评论的利器
来自低调的大师 Willin Kan ,周围的很多朋友也在用着,评价很高。

小墙原理和功能

其原理可以简单理解为:添加一个隐藏的资料框(属性为 display:none 的 textarea),因为用户是看不到的,如果该区域被填满则判断为 Spam。
还也能判断一些手动方式的。

WP Anti Spam 小墙

另外还在后台提供了spam 的基本资料,包含请求( REQUEST_URI )、来路( HTTP_REFERER )、IP、操作方式,,可提供下一步加强防护的参考。(见上图)

使用 WP Anti Spam 小墙的方法

效果出色,还免插件,没什么好犹豫的。
将以下代码复制到主题的 functions.php 中即可。

/* <<小牆>> Anti-Spam v1.84 by Willin Kan. */
class anti_spam {
  function anti_spam() {
    if ( !current_user_can('read') ) {
      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() {
    $w = 'w';
    if ( !empty($_POST[$w]) && empty($_POST['comment']) ) {
      $_POST['comment'] = $_POST[$w];
    } else {
      $request = $_SERVER['REQUEST_URI'];
      $way     = isset($_POST[$w]) ? '手動操作' : '未經評論表格';
      $spamcom = isset($_POST['comment']) ? $_POST['comment'] : '';
      $_POST['spam_confirmed'] = "請求: ". $request. "n方式: ". $way. "n內容: ". $spamcom. "n -- 記錄成功 --";
    }
  }
  // 處理
  function sink( $comment ) {
    // 不管 Trackbacks/Pingbacks
    if ( in_array( $comment['comment_type'], array('pingback', 'trackback') ) ) return $comment;

    // 已確定為 spam
    if ( !empty($_POST['spam_confirmed']) ) {
      // 方法一: 直接擋掉, 將 die(); 前面兩斜線刪除即可.
      //die();
      // 方法二: 標記為 spam, 留在資料庫檢查是否誤判.
      add_filter('pre_comment_approved', create_function('', 'return "spam";'));
      $comment['comment_content'] = "[ 小牆判斷這是Spam! ]n". $_POST['spam_confirmed'];
      $this->add_black( $comment );
    } else {
      // 檢查頭像
      $f = md5( strtolower($comment['comment_author_email']) );
      $g = sprintf( "http://%d.gravatar.com", (hexdec($f{0}) % 2) ) .'/avatar/'. $f .'?d=404';
      $headers = @get_headers( $g );
      if ( !preg_match("|200|", $headers[0]) ) {
        // 沒頭像的列入待審
        add_filter('pre_comment_approved', create_function('', 'return "0";'));
        //$this->add_black( $comment );
        }
    }
    return $comment;
  }
  // 列入黑名單
  function add_black( $comment ) {
    if (!($comment_author_url = $comment['comment_author_url'])) return;
    if (strpos($comment_author_url, '//')) $comment_author_url = substr($comment_author_url, strpos($comment_author_url, '//') + 2);
    if (strpos($comment_author_url, '/'))  $comment_author_url = substr($comment_author_url, 0, strpos($comment_author_url, '/'));
    update_option('blacklist_keys', $comment_author_url . "n" . get_option('blacklist_keys'));
  }
}
$anti_spam = new anti_spam();
// -- END ----------------------------------------

另外,我们可以看到很多 Spam 都是直接向 wp-comments-post.php 发出请求。
由于我使用了 Willin 大师的 Ajax comments,所以也可以把 wp-comments-post.php 给重命名了,这基本上阻挡了所有的机器 Spammer,不过没有 Spammer的日子也寂寞,哈哈。

Spam To Blacklist 插件,对抗人肉 Spam 的利器

这是来自 jiucool 同学的原创插件。
Spam To Blacklist 这个插件的作用是,在用户手动标记为垃圾评论时,自动将其 Email 和 URL 添加到评论黑名单。

小墙在对付机器 Spam 之类的无比强大,但并不是采用像 Akismet 那种黑名单机制,人肉的 Spammer 容易漏网。

这个Spam To Blacklist 刚好能补充这方便的不足,人肉对抗人肉,插件是把操作给简化了。
消灭那些 xx Seo,xx推广,xx网站 – -。

为了更新方便,请移步到 Spam To Blacklist 的主页下载。

下载插件后,解压完成将其上传至 /wp-content/plugins/ 目录,然后启用之即可,无需其他操作!

这就是我目前的反垃圾评论方案,你的呢?欢迎分享经验^ ^