Sometimes I feel like a broken record when I talk about the importance of having quality, intuitive to use search is essential to making a site succeed. It’s a need that can sneak up on you as your site grows. The bigger the site, the harder it is for users to find older content, or to get it all into your widgets and menus without making them too complicated.
In this article I will cover my favorite WordPress search tools. There are more plugins out there for improving WordPress search. A lot more. The four plugins I cover in this article are the ones that I have used and would use again.
Replacements For WordPress’ Built-in Search
What’s Wrong With WordPress’ Built In Search?
WordPress’ built-in search capabilities are very limited and not particularly performant. You can’t search even by custom fields. Also, you have no way of weighting results from different sources. Creating any sort of advanced search requires custom coding or a separate plugin.
The bottom line is that for almost all applications, the built-in search just doesn’t cut it.
These first two recommendations can seamlessly replace the WordPress built-in search with something that just works better.
SearchWP hijacks the built-in WordPress search, and works around all of its limitations. It let’s you search in custom fields, and it pre-indexes content for performances. When combined with the SearchWP AJAX Live Search you get high-performance, live updating search that searches what you want it to search.
SearchWP doesn’t stop there. It actually lets you create multiple search engines. Each search engine can search different types of content and weight results from different sources according to the settings.
Elasticsearch is one of the most powerful search tools on the internet today. It’s fast, extensible, distributed and resource-heavy. 10up’s ElasticPress is a plugin that brings it power to WordPress search. For really large sites this is a great tool, but it lacks the plug and play ease of use of SearchWP.
It requires that you install and configure Elasticsearch itself on a separate server. This makes it more difficult to use, but is a good thing as it means you’re not running that demanding processing on the same server as your site itself.
Visual Search Tools
The two plugins I discussed already are fairly transparent. They take over the built-in WordPress search, and should be fairly invisible to you end-user. They click your search icon and search happens, but better.
These next two tools are for more visual. You can use them to create content that is filterable by end users. Since they both work via AJAX, they allow you to use many different types of inputs and have the results update without a page refresh.
You might not know the term “faceted search” but you are familiar with it. Amazon.com uses it to help you refine search results, and so does eBay. It’s a powerful design pattern that works very well for companies like these. For eCommerce sites with more products than you can fit on a single page, then you need this type of search.
Faceted search isn’t just for eCommerce sites, it is great for any content heavy site, especially those that make good use of custom fields or taxonomies for organizing content. FacetWP doesn’t have built-in keyword search, but when you have SearchWP active, you can use it to power a keyword search. For sites that are more about information presentation, like knowledgebase sites and educational sites, keyword search is especially important.
If you use FacetWP, don’t forget to check out Clarity, our layout builder for FacetWP. It simplifies the FacetWP admin, while letting you create complete search layouts using a drag and drop responsive grid editor.
Caldera Easy Pods With Caldera Forms
I build a lot of sites with Pods obviously, and one of the things I love about Pods is the ability to store custom fields in a custom table. But I often don’t because then I can’t use FacetWP or SearchWP for search.
Recently I’ve done a couple of sites, including this site, using Caldera Easy Pods as a search interface. Caldera Easy Pods lets you search in Pods that use custom storage, and through Pods relationship fields in a way that no other plugin can.
Check out our Caldera Forms add-ons search for an example of what the end result looks like. Also checkout my screencast on creating a WooCommerce product search with Easy Pods. Both are examples of how Caldera Easy can be used with custom post types added by other plugins.
What’s The Best Tool For The Job?
So, what should you use? Every site is unique so it is hard to say. If you just need the regular WordPress text search to work better, than SearchWP is probably your best bet. For the same requirement, but for larger sites, when you have the skills and budget for Elasticsearch, than ElasticPress is worth looking into.
As you can probably tell, I’m a huge fan of visual search tools with lots of input types. FacetWP and Caldera Easy Pods are not the only options in that category, but they are the tools I choose for the job because of the great UX thanks to the immediate nature of the AJAX-powered live search that both provide.
Caldera Easy Pods has better support for Pods than FacetWP as I discussed above, which makes it a great choice for me. But for most people, I don’t think you can go wrong with either. Caldera Easy Pods is easier to work with in the admin than FacetWP, but thanks to our new plugin, Clarity for FacetWP, you can now use FacetWP without touching any PHP, and create responsive layouts for your search interface.
Sorry if that’s an ambiguous answer, but no project is the same. I hope that you will explore these solutions and other options and that this article will help choose the best tool for the job. Feel free to contact me, or tweet at me if you need any help finding the right option.
Is there a plugin that you like and I didn’t cover that you like? Leave a comment what you use and why you love it.