WordPress根据评论数量判断是否显示评论者的链接,未达到设定数值的评论者将不显示评论者链接,如果评论大于设定值,将邮箱加入到白名单;评论链接只显示白名单内的,这样就能防住一部分刷链接的访客。

  • 将以下代码添加到正在使用主题的 functions.php 文件内:
function fa_is_friend( $email = null , $num = 5 ){
    $count = get_comments(array(
        'author_email' => $email,
        'count' => true,
    ));

    return ( $count > $num );
}

function fa_update_friend_list( $comment_id ){
    $comment = get_comment($comment_id);
    $friend_list = get_option('friend_list') ? get_option('friend_list') : array();
    $email = $comment->comment_author_email;
    if ( fa_is_friend($email) && !in_array( $email , $friend_list) ) {
        $friend_list[] = $email;
        update_option('friend_list',$friend_list);
    }
}
add_action('comment_post', 'fa_update_friend_list');


function fa_show_friend_link( $return , $author, $comment_ID ){
    $comment = get_comment( $comment_ID );
    $email = $comment->comment_author_email;
    $friend_list = get_option('friend_list') ? get_option('friend_list') : array();
    if ( in_array($email,$friend_list) ) {
        return $return;
    } else {
        return $author;
    }
}
add_filter('get_comment_author_link','fa_show_friend_link',10,3);

fa_is_friend这个函数第二个变量num 是控制显示的数量,按照需求修改。

仅适合使用the_author_link()来输出评论者昵称的主题。


愿此生尽兴 赤诚善良