個人博客給垃圾評論充滿己經不是什么怪事了,我們經常會看到自己的博客下面的評論很亂了,下面給各位整理一個WordPress禁止沒有Gravatar頭像的郵箱提交評論方法,這個方法是比較有效的.
最近被垃圾評論弄煩了,有些目測是人工評論,但是帶著廣告鏈接,看著惡心,大部分沒有Gravatar頭像,于是本博決定阻止掉沒有頭像的訪客正常提交評論,編輯所用主題的functions.php文件,加入下面的代碼:
- /*
- * @author:vfhky 2013年09月11日20:23
- * @param string $email 用戶提交的表單中的email字段
- * @return int 0:無gravatar頭像; 1:有gravatar頭像
- **/
- function vfhky_checkgravatar($email) {
- $email_hash = md5(strtolower(trim($email)));
- $check_uri = 'http://www.gravatar.com/avatar/'.$email_hash.'?d=404';
- $headers = @get_headers($check_uri);
- if (!preg_match("|200|", $headers[0])) {
- return 0;
- } else {
- return 1;
- }
- }
本博客使用了Willin Kan大神的ajax提交評論,編輯comments-ajax.php,找到下面的代碼:
- if ( get_option('require_name_email') && !$user->ID ) {
- if ( 6 > strlen($comment_author_email) || '' == $comment_author )
- err( __('Error: please fill the required fields (name, email).') ); // ? wp_die 改?殄e?提示
- elseif ( !is_email($comment_author_email))
- err( __('Error: please enter a valid email address.') ); // ? wp_die 改?殄e?提示
- }
- //修改為:
- if ( get_option('require_name_email') && !$user->ID ) {
- if ( 6 > strlen($comment_author_email) || '' == $comment_author )
- err( __('錯誤:請必須填寫昵稱以及郵箱。') ); // ? wp_die 修改提示
- elseif ( !is_email($comment_author_email))
- err( __('錯誤:請輸入一個有效的電子郵箱地址。') ); // ? wp_die 修改提示
- elseif (vfhky_checkgravatar($comment_author_email) == 0)
- err( __('錯誤:請使用注冊有Gravatar頭像的郵箱留言。') );
- } //Vevb.com
新聞熱點
疑難解答
圖片精選