这在您引用的链接中有介绍:search_columns
属性不设置应在每个列中搜索的内容,而是指定应在“搜索”中搜索术语集的列。
具体来说,您只能搜索一个术语,但可以在一列或多列中查找。
//Search user logins & emails for \'foo\'.
$my_users = new WP_User_Query(
array(
\'fields\' => \'all\',
\'search\'=>\'foo\',
\'search_columns\'=> array(\'user_login\', \'user_email\'),
));
从
source, 默认值为:
user_email
- 如果搜索词中存在“@”user_login
, ID
- 如果不是,但术语是数字user_url
- 如果没有,则该术语看起来像一个url(并且您的用户少于10000)- 如果无法满足上述任何条件,则默认为搜索
user_login
和user_nicename
来源:$search_columns = array();
if ( $qv[\'search_columns\'] )
$search_columns = array_intersect( $qv[\'search_columns\'], array( \'ID\', \'user_login\', \'user_email\', \'user_url\', \'user_nicename\' ) );
if ( ! $search_columns ) {
if ( false !== strpos( $search, \'@\') )
$search_columns = array(\'user_email\');
elseif ( is_numeric($search) )
$search_columns = array(\'user_login\', \'ID\');
elseif ( preg_match(\'|^https?://|\', $search) && ! wp_is_large_network( \'users\' ) )
$search_columns = array(\'user_url\');
else
$search_columns = array(\'user_login\', \'user_nicename\');
}