在开发wordpress主题时遇到需要和用户打交到时,我们需要使用get_users函数,get_users函数看名字就知道是获取用户信息的,具体的用法可以查看我的上一篇文章。下面要说的是它的自定义查询。
wordpress和用户打交道的有两张表,一张是wp_users(存储用户的主信息),另外一张是 wp_usermeta(存储用户的扩展信息字段,我们需要自定义的字段也可以放到此表中)。
比如我们自定义了一个,_fei_vip_type字段,那么我们在查询用户时如何使用这个字段作为条件呢?这就是我们要说的。
设置自定义查询条件
function filter_users($query) { global $pagenow, $wpdb; if (is_admin() && 'users.php' == $pagenow && isset($_REQUEST['vip_type']) && $_REQUEST['vip_type'] == 'vip') { $query->set('meta_query', array( array( 'key' => '_fei_vip_type', 'value' => 'vip', 'compare' => '==', ), )); } return $query; } add_filter('pre_get_users', 'filter_users'); //设置查询用户的查询条件
这样就设置了一个查找是否是vip的查询条件
获取自定义条件的用户信息
$users = get_users(array( 'meta_query' => array( array( 'key' => '_fei_vip_type', 'value' => 'vip', 'compare' => '==', ), ), ));
这样即可安装自己的自定义查询条件使用get_users函数查询用户信息
评论抢沙发