On this page
WP_User_Query::get_search_sql( string $search, string[] $columns, bool $wild = false ): string
Used internally to generate an SQL string for searching across multiple columns.
Parameters
$searchstring Required-
Search string.
$columnsstring[] Required-
Array of columns to search.
$wildbool Optional-
Whether to allow wildcard searches. Default is false for Network Admin, true for single site.
Single site allows leading and trailing wildcards, Network Admin only trailing.Default:
false
Return
string
Source
File: wp-includes/class-wp-user-query.php. View all references
protected function get_search_sql( $search, $columns, $wild = false ) {
global $wpdb;
$searches = array();
$leading_wild = ( 'leading' === $wild || 'both' === $wild ) ? '%' : '';
$trailing_wild = ( 'trailing' === $wild || 'both' === $wild ) ? '%' : '';
$like = $leading_wild . $wpdb->esc_like( $search ) . $trailing_wild;
foreach ( $columns as $column ) {
if ( 'ID' === $column ) {
$searches[] = $wpdb->prepare( "$column = %s", $search );
} else {
$searches[] = $wpdb->prepare( "$column LIKE %s", $like );
}
}
return ' AND (' . implode( ' OR ', $searches ) . ')';
}
Related
Uses
| Uses | Description |
|---|---|
| wpdb::esc_like() wp-includes/class-wpdb.php | First half of escaping for |
| wpdb::prepare() wp-includes/class-wpdb.php | Prepares a SQL query for safe execution. |
Used By
| Used By | Description |
|---|---|
| WP_User_Query::__call() wp-includes/class-wp-user-query.php | Makes private/protected methods readable for backward compatibility. |
| WP_User_Query::prepare_query() wp-includes/class-wp-user-query.php | Prepares the query variables. |
Changelog
| Version | Description |
|---|---|
| 3.1.0 | Introduced. |
© 2003–2022 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_user_query/get_search_sql