WordPress 技巧:增强 WordPress 用户搜索

WordPress 后台的用户搜索默认是基于用户的 user_login 和 user_nicename 进行搜索的。有时候我们想增强 WordPress 用户的搜索,希望还能支持通过 display_name, nickname, user_email 进行检索,可以通过在当前主题的 functions.php 文件中添加下面这段代码实现:

query_vars['search'])){
        global $wpdb;
        $keyword = $query->query_vars['search'];
        $keyword = str_replace('*','',$keyword);
        $query->query_where = $wpdb->prepare(" WHERE 1=1 AND (user_login LIKE %s OR user_email LIKE %s OR user_nicename LIKE %s OR display_name LIKE %s OR UM.meta_value LIKE  %s) AND UM.meta_key='nickname'","%".$keyword."%","%".$keyword."%","%".$keyword."%","%".$keyword."%","%".$keyword."%");
        $query->query_fields .= " ,$wpdb->users.display_name, UM.meta_value as nickname";
        $query->query_from .= " left join $wpdb->usermeta UM on ($wpdb->users.ID=UM.user_id) ";
    }
}

©我爱水煮鱼,本站推荐使用的主机:阿里云,国外主机建议使用BlueHost

本站长期承接 WordPress 优化建站业务,请联系微信:「chenduopapa」。