Search posts by ID in admin

Not sure i understand why you’d want to query by ID, but that said it’s possible in a hacky kind of way(i like this method because it’s simple). add_action( ‘parse_request’, ‘idsearch’ ); function idsearch( $wp ) { global $pagenow; // If it’s not the post listing return if( ‘edit.php’ != $pagenow ) return; // If … Read more

How do I improve this admin query snippet to avoid generating duplicate results on non-meta searches?

A GROUP BY statement can group your posts after the JOIN. For WordPress you can use the posts_groupby filter. add_filter( ‘posts_groupby’, ‘my_post_limits’ ); function my_post_limits($groupby) { global $pagenow, $wpdb; if ( is_admin() && $pagenow == ‘edit.php’ && $_GET[‘post_type’]==’listings’ && $_GET[‘s’] != ” ) { $groupby = “$wpdb->posts.ID”; } return $groupby; }

How does WordPress search work behind the scenes?

EDIT – The current version of WordPress supports relevance, so this answer is no longer accurate. There’s no concept of rank or relevance, it’s just a simple LIKE query on the post title and content: ($wpdb->posts.post_title LIKE ‘{$n}{$term}{$n}’) OR ($wpdb->posts.post_content LIKE ‘{$n}{$term}{$n}’) You can use the posts_search filter to modify or completely replace the search … Read more

How to search for (partial match) display names of WordPress users?

Searching the main table Simply use WP_User_Query with a search argument. So if you want to search for example for a user with a keyword in his user_email or similar columns from the {$wpdb->prefix}users table, then you can do the following: $users = new WP_User_Query( array( ‘search’ => ‘*’.esc_attr( $your_search_string ).’*’, ‘search_columns’ => array( ‘user_login’, … Read more

How do I remove Pages from search?

The below should make the page post type no longer search-able. function remove_pages_from_search() { global $wp_post_types; $wp_post_types[‘page’]->exclude_from_search = true; } add_action(‘init’, ‘remove_pages_from_search’);

How to highlight search terms without plugin

Add these 2 functions to your functions.php function search_excerpt_highlight() { $excerpt = get_the_excerpt(); $keys = implode(‘|’, explode(‘ ‘, get_search_query())); $excerpt = preg_replace(‘/(‘ . $keys .’)/iu’, ‘<strong class=”search-highlight”>\0</strong>’, $excerpt); echo ‘<p>’ . $excerpt . ‘</p>’; } function search_title_highlight() { $title = get_the_title(); $keys = implode(‘|’, explode(‘ ‘, get_search_query())); $title = preg_replace(‘/(‘ . $keys .’)/iu’, ‘<strong class=”search-highlight”>\0</strong>’, … Read more