We have created three plugins, Easy Queries, Easy Pods, and Clarity for FacetWP that have many similar capabilities, while each have their unique features. All three plugins have a lot of similarities in their user interfaces as well. In this article, this article will highlight the differences between these three plugins to help you choose which one is best for you.
Easy Pods only works when Pods, a free content management system. is active and can only be used with Pods content types. Since Pods can “extend” any custom post type or taxonomy, as well as WordPress’ user and comment objects, it can be used with most anything.
This makes Easy Pods an excellent choice for current Pods users, and a potential choice for most users. But, if you already have a custom fields plugin, such as Advanced Custom Fields, installed, or do not need one, then adding Pods, just to use Easy Pods is probably not advisable.
Clarity for FacetWP requires FacetWP, which is an awesome “faceted” search tool. This is a commercial plugin. If you are looking for a way to create complete faceted search layouts, without writing any PHP, then Clarity and FacetWP are a great option. Clarity and FacetWP is a search system, if you want to define the content to display from the back-end, not create a search interface, then Clarity is not a good choice.
Easy Queries uses WordPress’ native WP_Query class for its work. It does not require any other plugins.
All three of these plugins use different methods to query for data from the database. That would be of limited use if you didn’t have a way to show the results.
Both Clarity and Easy Queries have an integrated template editor. It is designed to be simple to use. Both plugins can optionally use our free plugin Caldera Metaplate when more powerful templating functionality is needed.
What Can Be Queried
Both Easy Queries and FacetWP (with or without Clarity) rely on WordPress’ WP_Query class for their queries. This means that the queries can be run in one or more post types. But it also means they can not be used to query any other content type — taxonomies, users, comments, etc. WP_Query can query posts based on this data, but can not query them directly.
This means that Easy Queries and FacetWP can search for a post, of one or more post type, based on what category it is in, but it can not search categories directly. On the other hand, if you extend categories with Pods, then you can create an Easy Pod to query in categories.
In addition, since Pods has the ability to store data in custom tables of your database, Easy Pods has the ability to query this information, where Easy Queries or FacetWP could not. In addition Easy Pods has the best support for querying by Pods relationship fields, which is not possible in FacetWP and is not always possible in Easy Queries.
The major limitation of Easy Pods, is that it can only query in one content type at a time. For example, if you have two custom post types on your site: “shirts” and “pants” and used a custom field called “make” to identify their manufacturer and wanted to create a query to show all shirts and pants by the same manufacturer, this would be possible with Easy Queries, but not Easy Pods.
All three plugins can function as a search system. This is optional behavior for Easy Pods and Easy Queries, but the only way FacetWP, with or without Clarity, can function. Easy Pods and Easy Queries, use Caldera Forms to build the actual search form.
If you are using Pods that are not custom post types, or are not using the default meta storage, or you wish to search by relationship fields, then Easy Pods-based search forms are your only option.
Easy Queries and FacetWP can do very similar types of searches. Obviously, Easy Queries has more capabilities then just search. In addition, using Caldera Forms for creating the forms gives more flexibility and extensibility, including conditional logic that some users may require.
One cool feature of Easy Queries and Easy Pods, is that the options for dropdown, autocomplete, and other types of select fields can be set in one of three ways. They can be set manually in the Caldera Forms editor, they can be auto-populated from all posts or terms in a post type or taxonomy, or they can be determined using the results of another Easy Pod or Easy Query.