WP_Site_Query::get_search_sql
Used internally to generate an SQL string for searching across multiple columns.
Method of the class: WP_Site_Query{}
No Hooks.
Returns
String. Search SQL.
Usage
// protected - for code of main (parent) or child class $result = $this->get_search_sql( $search, $columns );
- $search(string) (required)
- Search string.
- $columns(string[]) (required)
- Array of columns to search.
Notes
- Global. wpdb. $wpdb WordPress database abstraction object.
Changelog
| Since 4.6.0 | Introduced. |
WP_Site_Query::get_search_sql() WP Site Query::get search sql code WP 6.8.3
protected function get_search_sql( $search, $columns ) {
global $wpdb;
if ( str_contains( $search, '*' ) ) {
$like = '%' . implode( '%', array_map( array( $wpdb, 'esc_like' ), explode( '*', $search ) ) ) . '%';
} else {
$like = '%' . $wpdb->esc_like( $search ) . '%';
}
$searches = array();
foreach ( $columns as $column ) {
$searches[] = $wpdb->prepare( "$column LIKE %s", $like );
}
return '(' . implode( ' OR ', $searches ) . ')';
}