Categories, Tags, Terms and Facets! Oh my!
One of the greatest features of WordPress is the ability to categorize and tag content and use meta fields to add valuable details to a post, product, page, or custom post. In many cases a simple listing of categories like this can do the trick:
Sometimes you have too many categories or tags to put into a vertical list so maybe you set up a simple dropdown of your categories like this:
The above methods of classifying and browsing content are restricted to one type of filtering being applied at once but sometimes you need a finer control while filtering. Faceted search is the answer to the question “how can I filter by category and tag?” or “can you find me a shirt that is blue in size medium?”. If your site can show blue shirts, or medium shirts but not all the medium blue shirts you are making the browsing and purchasing process harder for your customers and likely decreasing sales and customer satisfaction with your website.
Enter the facet wizard
While it may be possible to create our own facet searching/filtering from scratch for every project that really would be a ridiculous waste of time and effort. FacetWP is a wonderful premium WordPress plugin that we have used on a bunch of projects and have always been pleased with how flexible it is and how powerful it can be. With FacetWP you can set up as many Facets as your heart desires and as many different display templates as makes sense for your site.
Finding that diamond in the rough
A local gold retailer approached us to build them a WooCommerce store where they could sell their loose diamonds and as they described the typical filtering that they would need(Cut, Clarity, Colour, Carat Weight) we immediately thought of FacetWP. It would allow us to have a filter by each of those attributes using a variety of different methods( range sliders, dropdowns, checkboxes, etc).
Another project came up recently that needed a way to quickly find lawyers by city, state, name search, practice area, and the first letter of their last name. This sounded exactly like the sort of faceted filtering that FacetWP is built for.
Finding the lawyer you are looking for from a directory of hundreds of lawyers now couldn’t be any easier.
FacetWP simplifies and speeds up the search process
When using FacetWP to drill down to show a subset of our content it also will update the facet options that are available, hiding any facets that no longer have content. So maybe you are looking for used cars in the under $5000 price range and as soon as you change your price range facet the facet options will update and Tesla, Porsche, and Audi all drop off the list because there is no cars available from them within your price range. This makes your life easier because you have less options to look at now and you can shop more efficiently.
Because FacetWP uses AJAX to update the content and the filter options the whole page doesn’t have to be reloaded every time you get more specific and the plugin actually indexes all available options so the database queries happen very quickly.
But wait there’s more!
As developers we like to work with plugins that can be extended, modified, and enhanced with new features to meet our client’s needs and bring value to a project. FacetWP has great documentation and thankfully has been built with the flexibility that new facet types can be added if the need arises.
If we think back to the diamond store project we built there was one other key facet that the client wanted on top of the “4C’s”: shape. The diamond shape is a key factor when diamond hunting, especially if you aren’t looking for a round diamond(the most popular diamond shape). Someone looking for a pear or marquise diamond doesn’t want to be overwhelmed by all the round or princess cut diamonds available and until a shape is selected in many cases the colour, cut, clarity, or carat weight really doesn’t matter. We were able to create a custom FacetWP filter by diamond shape that actually shows a representative graphic of the shape you are looking for, instead of just a dropdown or list of the name of the shape. Being able to click on the image of the diamond shape helps the customer find the product or content faster and with less chance of confusion.
If you have a website with a lot of content or products that can be categorized and filtered by a few different facets simultaneously we would suggest looking into faceted search and how that can improve the experience for your sites visitors. Maybe you still don’t have a clue what faceted search means or you have questions about how it could be implemented on your website. Hit us up on twitter(@kuztek) or our contact page and we would be glad to help.
Further resources
Official FacetWP Docs
Car Demo
A great looking e-commerce store(built by someone else) using FacetWP