是否可以使用WP_USER_QUERY使用通配符按用户名进行搜索?

时间:2011-12-15 作者:Christopher East

如上所述,我正在尝试构建一个在BuddyPress中工作的AJAX搜索,无需修改核心代码,但这允许我在按用户名搜索时使用通配符。

有什么建议吗?

1 个回复
SO网友:Rob Lowe

我在add user autocomplete插件中找到了以下类。它扩展了普通的searcha并允许“*”;

示例:$wp\\u user\\u search=new A2B\\u user\\u查询(数组(\'search\'=>$s.*\');

A2B\\u User\\u Query类扩展了WP\\u User\\u Query{/***@请参见WP\\u User\\u Query::get\\u search\\u sql()*/函数get\\u search\\u sql($string,$cols,$wild=false){$string=esc\\u sql($string);

    // Always search all columns
    $cols = array(
        \'user_email\',
        \'user_login\',
        \'user_nicename\',
        \'user_url\',
        \'display_name\'
    );

    // Always do \'both\' for trailing_wild
    $wild = \'both\';

    $searches = array();
    $leading_wild = ( \'leading\' == $wild || \'both\' == $wild ) ? \'%\' : \'\';
    $trailing_wild = ( \'trailing\' == $wild || \'both\' == $wild ) ? \'%\' : \'\';
    foreach ( $cols as $col ) {
        if ( \'ID\' == $col )
            $searches[] = "$col = \'$string\'";
        else
            $searches[] = "$col LIKE \'$leading_wild" . like_escape($string) . "$trailing_wild\'";
    }

    return \' AND (\' . implode(\' OR \', $searches) . \')\';
}
}

结束

相关推荐

将文件上载到BuddyPress配置文件

有人知道有什么插件或方法允许用户将文件上传到他们的个人资料中吗?我的意思是,我可以稍后将这些文件链接到他们的配置文件,因为这些文件以某种方式链接到用户。我想允许我的用户上传论文、pdf等,然后在他们的个人资料中显示这些文件。提前谢谢!!