Let’s face it. The default WordPress search sucks. While there’s been some attempts at improving it, core search isn’t getting better anytime soon.
Fortunately, the new SearchWP plugin soothes this longstanding headache. The SearchWP website claims it to be the “most comprehensive, easy-to-use WordPress search plugin ever built”. Based on what I’ve seen so far, this is a 100% accurate statement.
Easy to Use Interface
When the plugin is first enabled, SearchWP automatically begins indexing your entire site. During this process, you can configure the default search engine. First, you select which post types to include in the search. That’s easy enough. Next, notice all those different weights in the screenshot above. This is what makes SearchWP so powerful — weights allow you to fine-tune the “importance” of each piece of content. If you want a custom field to have a big influence the search results, just give it a higher weight.
Sometimes there’s the need for different pages to have different searches. The plugin author, Jonathan Christopher, has already taken this into consideration. Essentially, you can create as many “sub-searches” as you need. Let’s say you want search on your Resources page to ONLY look through resource items. It’s as easy as creating a Supplemental Search and adding some template code to support it.
SearchWP focuses on one thing and does it well. Search is complicated (just ask Google), but somehow SearchWP masquerades all the complexities behind a clean, simple interface. The code is well-organized and follows WordPress standards. SearchWP relies on MySQL, so don’t expect it to replace Elasticsearch or Solr for massive sites. However, for the vast majority of WordPress sites out there, SearchWP is an absolute bargain and I would highly recommend it.