{"id":52028,"date":"2026-06-18T09:16:58","date_gmt":"2026-06-18T09:16:58","guid":{"rendered":"https:\/\/crocoblock.com\/knowledge-base\/?post_type=article&#038;p=52028"},"modified":"2026-06-18T09:25:10","modified_gmt":"2026-06-18T09:25:10","slug":"how-to-build-advanced-woocommerce-filters","status":"publish","type":"article","link":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/","title":{"rendered":"How to Build Advanced WooCommerce Filters"},"content":{"rendered":"\n<p>Combining the <strong>Query Builder<\/strong>, <strong>Data Store<\/strong>, <strong>Listing Template<\/strong>, and filters features from <em>JetEngine <\/em>and <em>JetSmartFilters <\/em>allows you to create advanced <em>WooCommerce <\/em>product queries (including on\u2011sale products and personalized recommendations) and use them as data sources for filters and listings.<\/p>\n\n\n\n<p>Such functionality is typically used when you need dynamic \u2018On Sale\u2019 sections, product recommendations such as \u2018You might also like\u2019, or complex filter logic that goes beyond the default <em>WooCommerce <\/em>options. This setup works with Elementor, Gutenberg (Block Editor), and Bricks using <em>JetEngine <\/em>listings and <em>JetSmartFilters <\/em>providers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"when-advanced-woocommerce-filters-for-onsale-product-queries-might-be-needed\">When Advanced WooCommerce Filters for On\u2011Sale Product Queries Might Be Needed<\/h2>\n\n\n\n<p>Advanced filters might not be necessary for each store. Talking about realistic use cases when this approach might be useful, consider the following:<\/p>\n\n\n\n<ul>\n<li>When you need a <em>WooCommerce <\/em><strong>On Sale<\/strong> section that correctly includes variable products and respects the sale end date.<\/li>\n\n\n\n<li>When you want to build a \u2018You might also like\u2019 block based on product attributes or user behavior, instead of static upsells.<\/li>\n\n\n\n<li>When your default sale filters or queries ignore discounts from third\u2011party plugins, and you need full control over the query logic.<\/li>\n\n\n\n<li>When you want to combine <em>JetSmartFilters <\/em>with custom queries.<\/li>\n<\/ul>\n\n\n\n<p>You may have a different scenario where you can find the following solutions useful.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"creating-an-onsale-woocommerce-query\">Creating an On\u2011Sale WooCommerce Query<\/h2>\n\n\n\n<p>When you need to display the list of the <em>WooCommerce <\/em>products that are on sale, follow the next guide. It allows you to query not only simple products, but also to include <a href=\"https:\/\/crocoblock.com\/blog\/woocommerce-product-variations-explained\/\" target=\"_blank\" rel=\"noreferrer noopener\">variable products<\/a> in the list. To learn more about <em>WooCommerce <\/em>product types, refer to the <em>WooCommerce <\/em>official documentation.<\/p>\n\n\n\n<p>Proceed to <strong><em>WordPress Dashboard &gt; JetEngine &gt; Query Builder<\/em><\/strong> and click the \u201c<strong>Add New<\/strong>\u201d button.&nbsp;<\/p>\n\n\n\n<p>Enter the <strong>Name <\/strong>for the query and select the \u201c<a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/query-builder-posts-query-type\/\" target=\"_blank\" rel=\"noreferrer noopener\">Posts Query<\/a>\u201d <strong>Query Type<\/strong>.<\/p>\n\n\n\n<p>In the <strong>General <\/strong>settings section, select the \u201cProducts\u201d and \u201cVariations\u201d options for the <strong>Post Type<\/strong> field.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-posts-query-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-posts-query-1824x1140-1-1024x640.webp\" alt=\"create a posts query\" class=\"wp-image-52031\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-posts-query-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-posts-query-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-posts-query-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-posts-query-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-posts-query-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-posts-query-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Proceed to the <strong>Post &amp; Page<\/strong> tab and click the \u201c<a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/dynamic-tags-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Tag<\/strong><\/a>\u201d icon next to the <strong>Post In<\/strong> field. Select the \u201cWC Products On Sale\u201d macro.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/products-on-sale-macro-set-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/products-on-sale-macro-set-1824x1140-1-1024x640.webp\" alt=\"products on sale macro set\" class=\"wp-image-52032\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/products-on-sale-macro-set-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/products-on-sale-macro-set-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/products-on-sale-macro-set-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/products-on-sale-macro-set-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/products-on-sale-macro-set-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/products-on-sale-macro-set-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click the \u201c<strong>Add\/Update Query<\/strong>\u201d button once you are ready.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"creating-you-might-also-like-recommendations\">Creating \u2018You Might Also Like\u2019 Recommendations<\/h2>\n\n\n\n<p>Although <em>JetWooBuilder<\/em> provides a ready solution for displaying the <em>WooCommerce <\/em>products of the same category with the <a href=\"https:\/\/crocoblock.com\/widgets\/single-related-products\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Single Related Products<\/strong><\/a> widget, you can set separate rules for displaying the recommendations based on.\u00a0<\/p>\n\n\n\n<p>Currently, you can show the products either from the same category, even if you do not use the <em>JetWooBuilder<\/em>, or based on the user\u2019s behavior, displaying recently viewed posts. We will have a look at the query settings for both cases. Feel free to choose the one that suits you best.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"show-recommendations-from-the-same-category\">Show recommendations from the same category<\/h3>\n\n\n\n<p>Create a \u201c<a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/jetengine-query-builder-wc-product-query-type\/\" target=\"_blank\" rel=\"noreferrer noopener\">WC Product Query<\/a>\u201d and select the desired <strong>Product Type <\/strong>and <strong>Status<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-wc-query-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-wc-query-1824x1140-1-1024x640.webp\" alt=\"create a wc query\" class=\"wp-image-52033\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-wc-query-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-wc-query-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-wc-query-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-wc-query-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-wc-query-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-wc-query-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Proceed to the <strong>Tax Query<\/strong> tab and click the \u201c<strong>Add new<\/strong>\u201d button. In the newly created window:&nbsp;<\/p>\n\n\n\n<ul>\n<li>select the desired product taxonomy in the <strong>Taxonomy <\/strong>field;&nbsp;<\/li>\n\n\n\n<li>choose \u201cTerm ID\u201d option in the <strong>Field <\/strong>dropdown;&nbsp;<\/li>\n\n\n\n<li>click the \u201c<strong>Dynamic Tag<\/strong>\u201d icon next to the <strong>Terms <\/strong>field, select the \u201cCurrent terms\u201d option, and then select the same category you have selected in the <strong>Taxonomy <\/strong>field;&nbsp;<\/li>\n\n\n\n<li>select the \u201cIN\u201d option for the <strong>Compare operator<\/strong> field.<\/li>\n<\/ul>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/tax-query-settings-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/tax-query-settings-1824x1140-1-1024x640.webp\" alt=\"tax query settings\" class=\"wp-image-52037\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/tax-query-settings-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/tax-query-settings-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/tax-query-settings-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/tax-query-settings-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/tax-query-settings-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/tax-query-settings-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click the \u201c<strong>Add\/Update Query<\/strong>\u201d button once you are ready.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"show-recommendations-based-on-the-users-behavior\">Show recommendations based on the user\u2019s behavior<\/h3>\n\n\n\n<p>You can display the recently viewed products, for example. For a more detailed guide, refer to our <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-create-recently-viewed-section-using-data-stores-module\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>How to Create \u201cRecently Viewed\u201d Section Using the Data Stores Module<\/strong><\/a> tutorial.\u00a0<\/p>\n\n\n\n<p>Here, we will shortly remind you that you will need to create a <strong>Posts Query<\/strong> for the <em>WooCommerce <\/em>products added to the <strong>Data Store<\/strong>. In the <strong>Posts In <\/strong>field, select the \u201cGet store\u201d option and choose the needed store.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/get-posts-from-the-store-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/get-posts-from-the-store-1824x1140-1-1024x640.webp\" alt=\"get posts from the store\" class=\"wp-image-52049\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/get-posts-from-the-store-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/get-posts-from-the-store-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/get-posts-from-the-store-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/get-posts-from-the-store-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/get-posts-from-the-store-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/get-posts-from-the-store-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click the \u201c<strong>Add\/Update Query<\/strong>\u201d button once you are ready.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"exclude-current-product-and-limit-results\">Exclude current product and limit results<\/h4>\n\n\n\n<p>Usually, you also need to exclude the current post from the recommendations. This can be set in the query as well. For that, proceed to the <strong>Post &amp; Page<\/strong> section and in the <strong>Post Not In<\/strong> field, click the \u201c<strong>Dynamic Tag<\/strong>\u201d icon. Select the \u201cCurrent ID\u201d option.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/exclude-the-current-post-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/exclude-the-current-post-1824x1140-1-1024x640.webp\" alt=\"exclude the current post\" class=\"wp-image-52050\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/exclude-the-current-post-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/exclude-the-current-post-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/exclude-the-current-post-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/exclude-the-current-post-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/exclude-the-current-post-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/exclude-the-current-post-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>If you need to set the number of posts\/products shown in the recommendations, proceed to the <strong>Pagination <\/strong>tab and set the desired number of posts in the <strong>Posts Per Page<\/strong> field. Use the \u201c-1\u201d value if you need to show all the posts.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/set-number-of-posts-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/set-number-of-posts-1824x1140-1-1024x640.webp\" alt=\"set number of posts\" class=\"wp-image-52051\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/set-number-of-posts-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/set-number-of-posts-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/set-number-of-posts-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/set-number-of-posts-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/set-number-of-posts-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/set-number-of-posts-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Remember to click the \u201c<strong>Add\/Update Query<\/strong>\u201d button once you are ready.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"connecting-custom-queries-to-jetsmartfilters\">Connecting Custom Queries to JetSmartFilters<\/h2>\n\n\n\n<p>You can use these queries simply by applying them to the lists. Further, we will learn how to filter the lists according to the queries we set earlier.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"set-up-the-filter\">Set up the filter<\/h3>\n\n\n\n<p>Proceed to <strong><em>WordPress Dashboard > Smart Filters > Add New<\/em><\/strong>. Enter the <strong>Filter Name<\/strong> and select either \u201c<a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/radio-filter-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\">Radio<\/a>\u201d or \u201c<a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/jetsmartfilters-how-to-use-the-select-filter-to-filter-publications-or-products\/\" target=\"_blank\" rel=\"noreferrer noopener\">Select<\/a>\u201d <strong>Filter Type<\/strong> (we use \u201cSelect\u201d in this case).<\/p>\n\n\n\n<p>Select the \u201cJetEngine Query Builder Switcher\u201d <strong>Data Source<\/strong>. Then, select the needed queries. It can be the query that returns all the products and another one for the recommended ones. You can also add more options so users can choose what exactly they want to see.&nbsp;<\/p>\n\n\n\n<p>In the <strong>Query Variable<\/strong> field, select the \u201cSwitch JetEngine query\u201d option.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-settings-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-settings-1824x1140-1-1024x640.webp\" alt=\"filter settings\" class=\"wp-image-52052\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-settings-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-settings-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-settings-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-settings-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-settings-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-settings-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click the \u201c<strong>Update<\/strong>\u201d button once you are ready.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"assign-the-custom-query-to-the-listing-grid\">Assign the custom query to the Listing Grid<\/h3>\n\n\n\n<p>Proceed to the page where the needed list of products is displayed \u2013 in this guide, we assume this is a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetwoobuilder\/jetwoobuilder-how-to-create-and-set-a-single-product-page-template\/\" target=\"_blank\" rel=\"noreferrer noopener\">single product page<\/a>. Add the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/listing-grid-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Listing Grid<\/strong><\/a> widget and select the needed <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/listing-template-in-elementor-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Listing Template<\/strong><\/a>.\u00a0<\/p>\n\n\n\n<p>In the <strong>Custom Query<\/strong> tab, enable the <strong>Use Custom Query<\/strong> toggle and select the needed query.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-is-applied-to-the-list-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-is-applied-to-the-list-1824x1140-1-1024x640.webp\" alt=\"query is applied to the list\" class=\"wp-image-52053\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-is-applied-to-the-list-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-is-applied-to-the-list-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-is-applied-to-the-list-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-is-applied-to-the-list-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-is-applied-to-the-list-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-is-applied-to-the-list-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>In the <strong>Advanced <\/strong>tab of the <strong>Listing Grid\u2019s<\/strong> settings, enter the unique <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-connect-filters-with-providers-using-custom-ids\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Query ID<\/strong><\/a> in the <strong>CSS ID<\/strong> field.<\/p>\n\n\n<div class=\"note-banner d-flex border-bold border-jetthemecore rounded overflow-hidden p-20\"><div class=\"mr-12\"><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M9 21C9 21.5 9.4 22 10 22H14C14.6 22 15 21.5 15 21V20H9V21ZM12 2C8.1 2 5 5.1 5 9C5 11.4 6.2 13.5 8 14.7V17C8 17.5 8.4 18 9 18H15C15.6 18 16 17.5 16 17V14.7C17.8 13.4 19 11.3 19 9C19 5.1 15.9 2 12 2Z\" fill=\"#F2D23C\"\/><\/svg><\/div><div class=\"d-flex flex-column\"><div class=\"text-900 mb-12\">Things to know<\/div><p class=\"m-0\">Ensure that the <strong>Query ID<\/strong> you add does not have spaces, special characters, or numbers. It must be unique and not repeatable.<\/p><\/div><\/div>\n\n\n\n<div class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/css-id-applied-to-the-listing-grid-1824x1140-1-1024x640.webp\" alt=\"css id applied to the listing grid\" class=\"wp-image-52054\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/css-id-applied-to-the-listing-grid-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/css-id-applied-to-the-listing-grid-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/css-id-applied-to-the-listing-grid-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/css-id-applied-to-the-listing-grid-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/css-id-applied-to-the-listing-grid-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/css-id-applied-to-the-listing-grid-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/div>\n\n\n\n<p>The same<strong> Query ID<\/strong> should be applied to all the custom queries you are using to filter this listing. Enter it in the <strong>Custom Query ID<\/strong> field in the query\u2019s settings.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-id-added-to-the-query-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-id-added-to-the-query-1824x1140-1-1024x640.webp\" alt=\"query id added to the query\" class=\"wp-image-52055\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-id-added-to-the-query-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-id-added-to-the-query-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-id-added-to-the-query-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-id-added-to-the-query-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-id-added-to-the-query-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/query-id-added-to-the-query-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Update the queries to save the settings.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"assign-the-filter-to-the-listing-grid\">Assign the filter to the Listing Grid<\/h3>\n\n\n\n<p>Return to the page where the <strong>Listing Grid<\/strong> is added. Add the filter widget \u2013 it is a <strong>Select Filter<\/strong> in our case, and select the filter you created.&nbsp;<\/p>\n\n\n\n<p>In the <strong>This filter for<\/strong> field, select the \u201cJetEngine\u201d provider.<\/p>\n\n\n\n<p>Enter the same <strong>Query ID<\/strong> as you used for the <strong>Listing Grid<\/strong> and all the queries in the dedicated field.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-assigned-to-the-listing-grid-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-assigned-to-the-listing-grid-1824x1140-1-1024x640.webp\" alt=\"filter assigned to the listing grid\" class=\"wp-image-52056\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-assigned-to-the-listing-grid-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-assigned-to-the-listing-grid-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-assigned-to-the-listing-grid-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-assigned-to-the-listing-grid-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-assigned-to-the-listing-grid-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/filter-assigned-to-the-listing-grid-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click the \u201c<strong>Publish<\/strong>\u201d button once you are ready.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"check-the-results\">Check the Results<\/h2>\n\n\n\n<p>Proceed to the front-end page. In the \u201cYou may also like\u2026\u201d section, all products are displayed.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/all-the-products-on-the-frontend-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/all-the-products-on-the-frontend-1824x1140-1-1024x640.webp\" alt=\"all the products on the frontend\" class=\"wp-image-52057\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/all-the-products-on-the-frontend-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/all-the-products-on-the-frontend-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/all-the-products-on-the-frontend-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/all-the-products-on-the-frontend-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/all-the-products-on-the-frontend-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/all-the-products-on-the-frontend-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Now, we can choose to see the products we have already viewed before.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/viewed-products-on-the-frontend-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/viewed-products-on-the-frontend-1824x1140-1-1024x640.webp\" alt=\"viewed products on the frontend\" class=\"wp-image-52058\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/viewed-products-on-the-frontend-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/viewed-products-on-the-frontend-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/viewed-products-on-the-frontend-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/viewed-products-on-the-frontend-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/viewed-products-on-the-frontend-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/viewed-products-on-the-frontend-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>When we select the \u201cSame Category Products,\u201d we get the products from the same category. In this case, we get the products from the \u201cWomen\u2019s Collection\u201d category.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/same-category-products-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/same-category-products-1824x1140-1-1024x640.webp\" alt=\"same category products\" class=\"wp-image-52059\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/same-category-products-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/same-category-products-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/same-category-products-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/same-category-products-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/same-category-products-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/same-category-products-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>In the same way, when we select the category \u201cProducts On Sale\u201d, we can see the correct products shown.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/on-sale-products-on-the-frontend-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/on-sale-products-on-the-frontend-1824x1140-1-1024x640.webp\" alt=\"on sale products on the frontend\" class=\"wp-image-52060\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/on-sale-products-on-the-frontend-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/on-sale-products-on-the-frontend-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/on-sale-products-on-the-frontend-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/on-sale-products-on-the-frontend-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/on-sale-products-on-the-frontend-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/on-sale-products-on-the-frontend-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"related-jetplugins-features\">Related JetPlugins Features<\/h2>\n\n\n\n<p>The described feature can be used together with the following Crocoblock plugins:<\/p>\n\n\n\n<ul>\n<li><a href=\"https:\/\/crocoblock.com\/plugins\/jetwoobuilder\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>JetWooBuilder<\/em><\/a> \u2014 to customize <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetwoobuilder\/how-to-create-a-shop-page-template\/\" target=\"_blank\" rel=\"noreferrer noopener\">Shop<\/a>, <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetwoobuilder\/how-to-create-a-cart-page-template\/\" target=\"_blank\" rel=\"noreferrer noopener\">Cart<\/a>, and Single Product templates and display dynamic product data.<\/li>\n\n\n\n<li><em>JetEngine <\/em><strong>Data Stores<\/strong> \u2014 to implement behavior-based recommendations (e.g., recently viewed or favorited products).<\/li>\n\n\n\n<li><em>JetSmartFilters <\/em><a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/jetsmartfilters-how-to-set-indexer-option-for-filters\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Indexer<\/strong><\/a> \u2014 to improve filtering performance for large product catalogs.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"faq\">FAQ<\/h2>\n\n\n\n<div class=\"schema-faq wp-block-yoast-faq-block\"><div class=\"schema-faq-section\" id=\"faq-question-1781768235194\"><strong class=\"schema-faq-question\">Does this filtering method work with variable products?<\/strong> <p class=\"schema-faq-answer\">Yes. By including the Variations post type in the query, the setup ensures that variable products are correctly recognized as \u201con sale,\u201d even when the discount is applied only to specific variations.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1781768261223\"><strong class=\"schema-faq-question\">Can I use this setup with third-party discount plugins?<\/strong> <p class=\"schema-faq-answer\">It depends on how the plugin stores pricing data. Some third-party plugins do not use standard <em>WooCommerce <\/em>sale fields, so additional custom query conditions may be required to include those discounted products.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1781768271587\"><strong class=\"schema-faq-question\">Why is the JetSmartFilters filter not affecting my listing?<\/strong> <p class=\"schema-faq-answer\">Most commonly, this is due to a mismatch in the <strong>Query ID<\/strong>. Ensure that:<br\/>   &#8211; the <strong>Listing Grid<\/strong>,<br\/>   &#8211; all custom queries, and<br\/>   &#8211; the filter itself<br\/>use the same <strong>Query ID<\/strong> value without spaces or special characters.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1781768318327\"><strong class=\"schema-faq-question\">Can I combine multiple queries in one filter?<\/strong> <p class=\"schema-faq-answer\">Yes. Using the \u201cJetEngine Query Builder Switcher\u201d as the filter data source allows you to switch between multiple queries (e.g., all products, on-sale products, or recommended products) within a single filter.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1781768338464\"><strong class=\"schema-faq-question\">How can I exclude the current product from recommendations?<\/strong> <p class=\"schema-faq-answer\">You can use the \u201cCurrent ID\u201d <strong>Dynamic Tag<\/strong> in the <strong>Post Not In<\/strong> field of the query. This prevents the currently viewed product from appearing in the recommendation list.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1781768349369\"><strong class=\"schema-faq-question\">Is it possible to show \u2018You might also like\u2019 products without JetWooBuilder?<\/strong> <p class=\"schema-faq-answer\">Yes. You can build custom recommendation queries using <em>JetEngine <\/em><strong>Query Builder<\/strong>, such as:<br\/>   &#8211; products from the same category, or<br\/>   &#8211; recently viewed products via <strong>Data Stores<\/strong>.<br\/>This approach gives you more flexibility compared to the default <em>WooCommerce <\/em>widgets.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1781768391984\"><strong class=\"schema-faq-question\">How do I improve performance for large product catalogs?<\/strong> <p class=\"schema-faq-answer\">For large product catalogs, you can enable the <strong>Indexer <\/strong>feature in <em>JetSmartFilters<\/em>. It stores preprocessed filter data in a dedicated database table, allowing filters to return results faster and reducing the need for complex real-time queries. This significantly improves filtering performance, especially for large datasets.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1781768401469\"><strong class=\"schema-faq-question\">Can I limit the number of products shown in recommendations?<\/strong> <p class=\"schema-faq-answer\">Yes. Use the<strong> Posts Per Page<\/strong> setting in the query\u2019s <strong>Pagination <\/strong>tab. Set a specific number to limit results or use \u201c-1\u201d to display all matching products.<\/p> <\/div> <\/div>\n\n\n\n<p>That\u2019s it. Now you know that <em>JetEngine\u2019s <\/em><strong>Query Builder<\/strong> allows you to build precise on\u2011sale sections and personalized product recommendations. This feature works with Elementor, Gutenberg (Block Editor), and Bricks when combined with <em>JetSmartFilters <\/em>and listings.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This guide focuses on setting up the advanced filters for WooCommerce products with WordPress JetSmartFilter and JetEngine plugins. It explains how to filter the products by the category, \u201con sale\u201d parameter, and users\u2019 behavior. <\/p>\n","protected":false},"author":20,"featured_media":0,"template":"","format":"standard","builder-category":[],"article-category":[419],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Build Advanced WooCommerce Filters \u2014 JetSmartFilters | Crocoblock<\/title>\n<meta name=\"description\" content=\"Discover how to set up the advanced filters for WooCommerce products with WordPress JetSmartFilter and JetEngine plugins. It explains how to filter the products by the category, \u201con sale\u201d parameter, and users\u2019 behavior.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Build Advanced WooCommerce Filters \u2014 JetSmartFilters | Crocoblock\" \/>\n<meta property=\"og:description\" content=\"Discover how to set up the advanced filters for WooCommerce products with WordPress JetSmartFilter and JetEngine plugins. It explains how to filter the products by the category, \u201con sale\u201d parameter, and users\u2019 behavior.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/\" \/>\n<meta property=\"og:site_name\" content=\"Help Center\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-18T09:25:10+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-posts-query-1824x1140-1-1024x640.webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"WebPage\",\"FAQPage\"],\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/\",\"name\":\"How to Build Advanced WooCommerce Filters \u2014 JetSmartFilters | Crocoblock\",\"isPartOf\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#website\"},\"datePublished\":\"2026-06-18T09:16:58+00:00\",\"dateModified\":\"2026-06-18T09:25:10+00:00\",\"description\":\"Discover how to set up the advanced filters for WooCommerce products with WordPress JetSmartFilter and JetEngine plugins. It explains how to filter the products by the category, \u201con sale\u201d parameter, and users\u2019 behavior.\",\"breadcrumb\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#breadcrumb\"},\"mainEntity\":[{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768235194\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768261223\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768271587\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768318327\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768338464\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768349369\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768391984\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768401469\"}],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/crocoblock.com\/knowledge-base\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Articles\",\"item\":\"https:\/\/crocoblock.com\/knowledge-base\/articles\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How to Build Advanced WooCommerce Filters\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#website\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/\",\"name\":\"Help Center\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/crocoblock.com\/knowledge-base\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#organization\",\"name\":\"Help Center\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg\",\"contentUrl\":\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg\",\"caption\":\"Help Center\"},\"image\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768235194\",\"position\":1,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768235194\",\"name\":\"Does this filtering method work with variable products?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. By including the Variations post type in the query, the setup ensures that variable products are correctly recognized as \u201con sale,\u201d even when the discount is applied only to specific variations.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768261223\",\"position\":2,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768261223\",\"name\":\"Can I use this setup with third-party discount plugins?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"It depends on how the plugin stores pricing data. Some third-party plugins do not use standard <em>WooCommerce <\/em>sale fields, so additional custom query conditions may be required to include those discounted products.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768271587\",\"position\":3,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768271587\",\"name\":\"Why is the JetSmartFilters filter not affecting my listing?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Most commonly, this is due to a mismatch in the <strong>Query ID<\/strong>. Ensure that:<br\/>   - the <strong>Listing Grid<\/strong>,<br\/>   - all custom queries, and<br\/>   - the filter itself<br\/>use the same <strong>Query ID<\/strong> value without spaces or special characters.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768318327\",\"position\":4,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768318327\",\"name\":\"Can I combine multiple queries in one filter?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Using the \u201cJetEngine Query Builder Switcher\u201d as the filter data source allows you to switch between multiple queries (e.g., all products, on-sale products, or recommended products) within a single filter.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768338464\",\"position\":5,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768338464\",\"name\":\"How can I exclude the current product from recommendations?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"You can use the \u201cCurrent ID\u201d <strong>Dynamic Tag<\/strong> in the <strong>Post Not In<\/strong> field of the query. This prevents the currently viewed product from appearing in the recommendation list.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768349369\",\"position\":6,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768349369\",\"name\":\"Is it possible to show \u2018You might also like\u2019 products without JetWooBuilder?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. You can build custom recommendation queries using <em>JetEngine <\/em><strong>Query Builder<\/strong>, such as:<br\/>   - products from the same category, or<br\/>   - recently viewed products via <strong>Data Stores<\/strong>.<br\/>This approach gives you more flexibility compared to the default <em>WooCommerce <\/em>widgets.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768391984\",\"position\":7,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768391984\",\"name\":\"How do I improve performance for large product catalogs?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"For large product catalogs, you can enable the <strong>Indexer <\/strong>feature in <em>JetSmartFilters<\/em>. It stores preprocessed filter data in a dedicated database table, allowing filters to return results faster and reducing the need for complex real-time queries. This significantly improves filtering performance, especially for large datasets.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768401469\",\"position\":8,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768401469\",\"name\":\"Can I limit the number of products shown in recommendations?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Use the<strong> Posts Per Page<\/strong> setting in the query\u2019s <strong>Pagination <\/strong>tab. Set a specific number to limit results or use \u201c-1\u201d to display all matching products.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Build Advanced WooCommerce Filters \u2014 JetSmartFilters | Crocoblock","description":"Discover how to set up the advanced filters for WooCommerce products with WordPress JetSmartFilter and JetEngine plugins. It explains how to filter the products by the category, \u201con sale\u201d parameter, and users\u2019 behavior.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/","og_locale":"en_US","og_type":"article","og_title":"How to Build Advanced WooCommerce Filters \u2014 JetSmartFilters | Crocoblock","og_description":"Discover how to set up the advanced filters for WooCommerce products with WordPress JetSmartFilter and JetEngine plugins. It explains how to filter the products by the category, \u201con sale\u201d parameter, and users\u2019 behavior.","og_url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/","og_site_name":"Help Center","article_modified_time":"2026-06-18T09:25:10+00:00","og_image":[{"url":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/06\/create-a-posts-query-1824x1140-1-1024x640.webp"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["WebPage","FAQPage"],"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/","url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/","name":"How to Build Advanced WooCommerce Filters \u2014 JetSmartFilters | Crocoblock","isPartOf":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#website"},"datePublished":"2026-06-18T09:16:58+00:00","dateModified":"2026-06-18T09:25:10+00:00","description":"Discover how to set up the advanced filters for WooCommerce products with WordPress JetSmartFilter and JetEngine plugins. It explains how to filter the products by the category, \u201con sale\u201d parameter, and users\u2019 behavior.","breadcrumb":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#breadcrumb"},"mainEntity":[{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768235194"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768261223"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768271587"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768318327"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768338464"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768349369"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768391984"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768401469"}],"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/crocoblock.com\/knowledge-base\/"},{"@type":"ListItem","position":2,"name":"Articles","item":"https:\/\/crocoblock.com\/knowledge-base\/articles\/"},{"@type":"ListItem","position":3,"name":"How to Build Advanced WooCommerce Filters"}]},{"@type":"WebSite","@id":"https:\/\/crocoblock.com\/knowledge-base\/#website","url":"https:\/\/crocoblock.com\/knowledge-base\/","name":"Help Center","description":"","publisher":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/crocoblock.com\/knowledge-base\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/crocoblock.com\/knowledge-base\/#organization","name":"Help Center","url":"https:\/\/crocoblock.com\/knowledge-base\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/","url":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg","contentUrl":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg","caption":"Help Center"},"image":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/"}},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768235194","position":1,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768235194","name":"Does this filtering method work with variable products?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"Yes. By including the Variations post type in the query, the setup ensures that variable products are correctly recognized as \u201con sale,\u201d even when the discount is applied only to specific variations.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768261223","position":2,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768261223","name":"Can I use this setup with third-party discount plugins?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"It depends on how the plugin stores pricing data. Some third-party plugins do not use standard <em>WooCommerce <\/em>sale fields, so additional custom query conditions may be required to include those discounted products.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768271587","position":3,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768271587","name":"Why is the JetSmartFilters filter not affecting my listing?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"Most commonly, this is due to a mismatch in the <strong>Query ID<\/strong>. Ensure that:<br\/>   - the <strong>Listing Grid<\/strong>,<br\/>   - all custom queries, and<br\/>   - the filter itself<br\/>use the same <strong>Query ID<\/strong> value without spaces or special characters.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768318327","position":4,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768318327","name":"Can I combine multiple queries in one filter?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"Yes. Using the \u201cJetEngine Query Builder Switcher\u201d as the filter data source allows you to switch between multiple queries (e.g., all products, on-sale products, or recommended products) within a single filter.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768338464","position":5,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768338464","name":"How can I exclude the current product from recommendations?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"You can use the \u201cCurrent ID\u201d <strong>Dynamic Tag<\/strong> in the <strong>Post Not In<\/strong> field of the query. This prevents the currently viewed product from appearing in the recommendation list.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768349369","position":6,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768349369","name":"Is it possible to show \u2018You might also like\u2019 products without JetWooBuilder?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"Yes. You can build custom recommendation queries using <em>JetEngine <\/em><strong>Query Builder<\/strong>, such as:<br\/>   - products from the same category, or<br\/>   - recently viewed products via <strong>Data Stores<\/strong>.<br\/>This approach gives you more flexibility compared to the default <em>WooCommerce <\/em>widgets.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768391984","position":7,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768391984","name":"How do I improve performance for large product catalogs?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"For large product catalogs, you can enable the <strong>Indexer <\/strong>feature in <em>JetSmartFilters<\/em>. It stores preprocessed filter data in a dedicated database table, allowing filters to return results faster and reducing the need for complex real-time queries. This significantly improves filtering performance, especially for large datasets.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768401469","position":8,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-build-advanced-woocommerce-filters\/#faq-question-1781768401469","name":"Can I limit the number of products shown in recommendations?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"Yes. Use the<strong> Posts Per Page<\/strong> setting in the query\u2019s <strong>Pagination <\/strong>tab. Set a specific number to limit results or use \u201c-1\u201d to display all matching products.","inLanguage":"en-US"},"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article\/52028"}],"collection":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article"}],"about":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/types\/article"}],"author":[{"embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/users\/20"}],"wp:attachment":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/media?parent=52028"}],"wp:term":[{"taxonomy":"builder-category","embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/builder-category?post=52028"},{"taxonomy":"article-category","embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article-category?post=52028"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}