{"id":36820,"date":"2023-02-27T15:13:17","date_gmt":"2023-02-27T15:13:17","guid":{"rendered":"https:\/\/crocoblock.com\/knowledge-base\/?post_type=article&#038;p=36820"},"modified":"2026-05-28T14:11:17","modified_gmt":"2026-05-28T14:11:17","slug":"how-to-use-filters-with-listing-grid","status":"publish","type":"article","link":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/","title":{"rendered":"How to Use Filters with the Listing Grid Widget"},"content":{"rendered":"\n<p><em>JetSmartFilters\u2019 <\/em>filters<em> <\/em>can be connected to the <em>JetEngine <\/em><a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/listing-grid-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Listing Grid<\/strong><\/a> widget\/block\/element to filter posts, products, users, <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/custom-post-type-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Custom Post Types<\/strong><\/a>, or <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/custom-content-type\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Custom Content Types<\/strong><\/a> dynamically.<\/p>\n\n\n\n<p>This tutorial covers:<\/p>\n\n\n\n<ul>\n<li>creating and attaching filters to the <strong>Listing Grid<\/strong> widget\/block\/element;<\/li>\n\n\n\n<li>configuring AJAX filtering;<\/li>\n\n\n\n<li>choosing the correct provider;<\/li>\n\n\n\n<li>avoiding common pagination and filtering issues.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-filtering-works-with-listing-grid\">How Filtering Works with Listing Grid<\/h2>\n\n\n\n<p><strong>Listing Grid<\/strong> is a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/jetengine-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>JetEngine<\/em><\/a> plugin widget\/block\/element intended to display dynamic data from <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/meta-field-types-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Meta Fields<\/strong><\/a> of <strong>Custom Post Types (CPT)<\/strong>, <strong>Custom Content Types (CCT)<\/strong>, default WordPress pages and posts, terms, <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/custom-taxonomy-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>taxonomy<\/strong><\/a>, or <a href=\"https:\/\/crocoblock.com\/blog\/wordpress-user-roles-permissions-explained\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>WordPress User<\/strong><\/a> data. If additional plugins are installed and activated, this widget\/block\/element can be used to display <em>WooCommerce<\/em> products, <a href=\"https:\/\/crocoblock.com\/knowledge-base\/plugins\/jetappointment\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>JetAppointment<\/em><\/a> service, and provider data, and more in the form of a grid.\u00a0<\/p>\n\n\n\n<p>So when the <em>JetEngine <\/em><strong>Listing Grid<\/strong> returns the results of the query, <em>JetSmartFilters <\/em>modifies the query results according to the selected parameters. The list can be filtered by categories, meta fields, or query results, etc. It is also important to select the proper provider and the <strong>Apply Type<\/strong> settings for smooth filtering.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-a-filter-in-jetsmartfilters\">Create a Filter in JetSmartFilters<\/h2>\n\n\n\n<p>Proceed to <strong><em>WordPress Dashboard &gt; Smart Filters<\/em><\/strong> and click the \u201c<strong>Add New<\/strong>\u201d button.<\/p>\n\n\n\n<p>In the newly opened window, fill in the following fields:<\/p>\n\n\n\n<ul>\n<li><strong>Filter Name<\/strong> \u2014 enter the desired name for the filter to be able to search by it;<\/li>\n\n\n\n<li><strong>Filter Label<\/strong> \u2014 enter the regular label that will be shown next to the filter itself. It helps users understand what the filter is for before they interact with it;<\/li>\n\n\n\n<li><strong>Active Filter Label<\/strong> \u2014 enter the label that will be shown after the filter becomes active, usually inside the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/jetsmartfilters-how-to-enable-visitors-to-disable-active-filters\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Active Filters<\/strong><\/a> or <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/jetsmartfilters-active-tags-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Active Tags<\/strong><\/a> widgets\/blocks\/elements;<\/li>\n\n\n\n<li><strong>Filter Type<\/strong> \u2014 select the desired type of filter. Among the options are: \u201c<a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/jetsmartfilters-how-to-create-a-new-filter-and-apply-it-to-publications\/\" target=\"_blank\" rel=\"noreferrer noopener\">Checkboxes list<\/a>,\u201d \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 \u201c<a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/jetsmartfilters-how-to-create-a-search-filter\/\" target=\"_blank\" rel=\"noreferrer noopener\">Search<\/a>,\u201d etc. The following settings will become available for adjusting according to the selected type;\u00a0<\/li>\n<\/ul>\n\n\n\n<p>In this case, we select \u201cCheckbox list\u201d <strong>Filter Type<\/strong>. For the <strong>Data Source<\/strong>, we use the \u201cTaxonomies\u201d option. For the <strong>Taxonomy<\/strong>, select the required one; we use the \u201cCategory.\u201d You can also set the <strong>Order <\/strong>rules, whether you need to show the empty terms, or include\/exclude some terms, etc.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/checkboxes-filter-settings-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/checkboxes-filter-settings-1824x1140-1-1024x640.webp\" alt=\"checkboxes filter settings\" class=\"wp-image-51935\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/checkboxes-filter-settings-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/checkboxes-filter-settings-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/checkboxes-filter-settings-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/checkboxes-filter-settings-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/checkboxes-filter-settings-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/checkboxes-filter-settings-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>To save the filter, the \u201c<strong>Update<\/strong>\u201d button should be pressed.<\/p>\n\n\n<div class=\"note-banner d-flex border-bold border-jetsmartfilters 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=\"M1 21H23L12 2L1 21ZM13 18H11V16H13V18ZM13 14H11V10H13V14Z\" fill=\"#FA5450\"\/><\/svg><\/div><div class=\"d-flex flex-column\"><div class=\"text-900 mb-12\">Warning<\/div><p class=\"m-0\">If some required fields are empty, you will not be able to update the filter, and the notification will be shown next to the \u201c<strong>Update<\/strong>\u201d button.<\/p><\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"add-the-listing-grid\">Add the Listing Grid<\/h2>\n\n\n\n<p>Open the editing page where the filter is expected to be applied \u2014 we use Elementor editor in this case. Insert the <strong>Listing Grid<\/strong> widget and select the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/listing-template-in-elementor-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Listing Item<\/strong><\/a> you created earlier.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/listing-grid-added-to-the-page-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/listing-grid-added-to-the-page-1824x1140-1-1024x640.webp\" alt=\"listing grid added to the page\" class=\"wp-image-51936\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/listing-grid-added-to-the-page-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/listing-grid-added-to-the-page-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/listing-grid-added-to-the-page-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/listing-grid-added-to-the-page-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/listing-grid-added-to-the-page-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/listing-grid-added-to-the-page-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Follow the<strong> <\/strong><a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-create-a-listing-template-for-post-types\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>How to Create a Listing Template for Post Types in Elementor<\/strong><\/a> tutorial if you are not sure about the settings.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"connect-the-filter-to-the-listing-grid\">Connect the Filter to the Listing Grid<\/h2>\n\n\n\n<p>Now, add the filter widget to the page. As far as we have created a \u201cCheckboxes list\u201d filter, we search for and add the <strong>Checkboxes Filter<\/strong> widget. Select the filter you created, \u201cCategory\u201d in our case.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-added-to-the-page-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-added-to-the-page-1824x1140-1-1024x640.webp\" alt=\"filter added to the page\" class=\"wp-image-51937\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-added-to-the-page-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-added-to-the-page-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-added-to-the-page-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-added-to-the-page-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-added-to-the-page-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-added-to-the-page-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"choose-the-correct-provider-for-your-filter\">Choose the correct provider for your filter<\/h3>\n\n\n\n<p>The next vital setting is the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/filters-providers-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\">provider<\/a> selection in the <strong>This filter for <\/strong>field. As far as we are using the <strong>Listing Grid<\/strong> as a provider, the \u201cJetEngine\u201d option should be selected.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/jetengine-provider-is-set-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/jetengine-provider-is-set-1824x1140-1-1024x640.webp\" alt=\"jetengine provider is set\" class=\"wp-image-51938\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/jetengine-provider-is-set-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/jetengine-provider-is-set-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/jetengine-provider-is-set-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/jetengine-provider-is-set-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/jetengine-provider-is-set-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/jetengine-provider-is-set-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Remember to enable the needed provider in <strong><em>WordPress Dashboard > Smart Filters > Settings > General Settings<\/em><\/strong>. The provider will not be available in the<strong> This filter for <\/strong>dropdown until it is enabled in these settings.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/03\/enable-providers-for-filters.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/03\/enable-providers-for-filters-1024x640.webp\" alt=\"enable providers for filters\" class=\"wp-image-50999\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/03\/enable-providers-for-filters-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/03\/enable-providers-for-filters-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/03\/enable-providers-for-filters-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/03\/enable-providers-for-filters-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/03\/enable-providers-for-filters-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/03\/enable-providers-for-filters.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>To learn more about correct provider selection according to the filtered widget\/block\/element, refer to our <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-connect-filters-with-providers-using-custom-ids\/\" target=\"_blank\" rel=\"noreferrer noopener\">How to Connect Filters with Providers Using Custom IDs<\/a> guide. It is important to select the corresponding provider, otherwise, the filter will not be applied.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"ajax-vs-page-reload-filtering\">AJAX vs. Page Reload filtering<\/h3>\n\n\n\n<p>The next important setting is the <strong>Apply Type<\/strong>. There are three options offered:&nbsp;<\/p>\n\n\n\n<ul>\n<li>AJAX;<\/li>\n\n\n\n<li>Mixed;<\/li>\n\n\n\n<li>Page Reload.<\/li>\n<\/ul>\n\n\n\n<p>The option you choose will affect the way the filter is applied. Here is a short comparison table for you to understand the difference between the <strong>Apply Types<\/strong>.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Apply Type<\/strong><\/td><td><strong>When to Use<\/strong><\/td><td><strong>URL Behavior<\/strong><\/td><\/tr><tr><td>AJAX<\/td><td>Standard filtering without page reload<\/td><td>URL does not change<\/td><\/tr><tr><td>Mixed<\/td><td>When shareable filtered URLs are needed<\/td><td>URL updates, but the page does not reload<\/td><\/tr><tr><td>Page Reload<\/td><td>Static archive filtering and SEO-oriented pages<\/td><td>Full page reload<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>To learn more about which Apply Type should be used in what case, check our <a href=\"https:\/\/docs.google.com\/document\/d\/17CbHbzXjttejm_roR6SejE6BYwERKdz8_hIorGt8My4\/edit?tab=t.0\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>AJAX, Mixed, and Page Reload Filter Apply Types Overview<\/strong><\/a> guide.\u00a0<\/p>\n\n\n\n<p>If you see a full page reload instead of a smooth AJAX update when filtering, first check the <strong>Apply Type<\/strong> setting in <em>JetSmartFilters <\/em>and the AJAX settings of the grid widget\/block\/element.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"back-button-and-filter-state\">Back Button and filter state<\/h4>\n\n\n\n<p>The browser\u2019s \u201c<strong>Back<\/strong>\u201d button behavior also depends on the Apply Type selected for the filters on the page.&nbsp;&nbsp;<\/p>\n\n\n\n<ul>\n<li>AJAX <strong>Apply Type <\/strong>does not change the URL once the filter is applied \u2014 that\u2019s why if you click the \u201c<strong>Back<\/strong>\u201d button to remove the applied filters, you will be redirected to the previous page.&nbsp;<\/li>\n\n\n\n<li>Mixed <strong>Apply Type<\/strong> stores filter values in the URL\u2014 this helps preserve filtered results when users navigate back from a single post\/page. That is also useful for directories, stores, and archive pages.<\/li>\n\n\n\n<li>Page Reload <strong>Apply Type <\/strong>stores the filter values in the URL, as well as reloading the page completely when the filter is applied. It works well together with the \u201c<strong>Back<\/strong>\u201d button: it will redirect you to the previous filter results or prefiltered grid.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"pagination-load-more-and-infinite-scroll-notes\">Pagination, Load More, and Infinite Scroll notes<\/h3>\n\n\n\n<p>Another important setting that can affect the filters\u2019 behavior is the <strong>Posts number<\/strong> setting in the <strong>Listing Grid<\/strong> widget\/block\/element or a custom query if applied.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-number-setting-in-the-listing-grid-widget-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-number-setting-in-the-listing-grid-widget-1824x1140-1-1024x640.webp\" alt=\"posts number setting in the listing grid widget\" class=\"wp-image-51939\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-number-setting-in-the-listing-grid-widget-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-number-setting-in-the-listing-grid-widget-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-number-setting-in-the-listing-grid-widget-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-number-setting-in-the-listing-grid-widget-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-number-setting-in-the-listing-grid-widget-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-number-setting-in-the-listing-grid-widget-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n<div class=\"note-banner d-flex border-bold border-jetsmartfilters 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=\"M1 21H23L12 2L1 21ZM13 18H11V16H13V18ZM13 14H11V10H13V14Z\" fill=\"#FA5450\"\/><\/svg><\/div><div class=\"d-flex flex-column\"><div class=\"text-900 mb-12\">Warning<\/div><p class=\"m-0\">When using <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/jetengine-how-to-create-load-more-button\/\" target=\"_blank\" rel=\"noopener\"><strong>Load More<\/strong><\/a> or <strong>Infinite Scroll<\/strong> together with filters, the <strong>Posts number<\/strong> setting in the <strong>Listing Grid<\/strong> determines how many posts are available for filtering. If this number is smaller than the total number of matching posts, some filtered results may not appear.<\/p><\/div><\/div>\n\n\n\n<p>Among the possible issues you may encounter are:<\/p>\n\n\n\n<ul>\n<li>posts duplication;<\/li>\n\n\n\n<li>incomplete filtering results;<\/li>\n\n\n\n<li>wrong number of posts.<\/li>\n<\/ul>\n\n\n\n<p>So ensure that the <strong>Posts number<\/strong> field defines at least as many posts as there are available in the filtered results. Additionally, you can try to set the correct number of posts in the custom query, following the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/query-builder-posts-query-type\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong><em>Posts Query<\/em><\/strong><\/a><strong><em> > Pagination > Posts Per Page field<\/em><\/strong> directory.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-per-page-defined-in-posts-query-1824x1140-2.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-per-page-defined-in-posts-query-1824x1140-2-1024x640.webp\" alt=\"posts per page defined in posts query\" class=\"wp-image-51941\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-per-page-defined-in-posts-query-1824x1140-2-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-per-page-defined-in-posts-query-1824x1140-2-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-per-page-defined-in-posts-query-1824x1140-2-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-per-page-defined-in-posts-query-1824x1140-2-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-per-page-defined-in-posts-query-1824x1140-2-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/posts-per-page-defined-in-posts-query-1824x1140-2.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"when-query-id-is-needed\">When Query ID is needed<\/h3>\n\n\n\n<p>By default, <em>JetSmartFilters\u2019 <\/em>filters<em> <\/em>work without a <strong>Query ID<\/strong>. However, often the <strong>Query ID<\/strong> is required when using <strong>Query Builder<\/strong> or multiple grids\/filters on one page. Refer to the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-connect-filters-with-providers-using-custom-ids\/\" target=\"_blank\" rel=\"noreferrer noopener\">How to Connect Filters with Providers Using Custom IDs<\/a> guide to learn how to attach the <strong>Query ID<\/strong> to different providers.\u00a0<\/p>\n\n\n\n<p>The <strong>Query ID<\/strong> might be required when:&nbsp;<\/p>\n\n\n\n<ul>\n<li>there are multiple grids\/filters on one page, and you need to connect filters to dedicated providers;<\/li>\n\n\n\n<li>there are several custom queries used on the page that prevent filters from working correctly.<\/li>\n<\/ul>\n\n\n\n<p>For simple <strong>Listing Grid<\/strong> setups, the <strong>Query ID<\/strong> may not be necessary.<\/p>\n\n\n\n<p>To set up the <strong>Query ID<\/strong> correctly, in the <strong>Query ID<\/strong> field of the filter widget, add the unique ID.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-added-to-the-filter-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-added-to-the-filter-1824x1140-1-1024x640.webp\" alt=\"query id added to the filter\" class=\"wp-image-51942\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-added-to-the-filter-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-added-to-the-filter-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-added-to-the-filter-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-added-to-the-filter-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-added-to-the-filter-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-added-to-the-filter-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\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. Refer to our <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/applying-filters-to-several-widgets-on-page\/\" target=\"_blank\" rel=\"noopener\"><strong>How to Apply Filters to Several Widgets on a Page<\/strong><\/a> guide to know how to apply the <strong>Query IDs<\/strong> to the filters and providers when there are several providers on the page.<\/p><\/div><\/div>\n\n\n\n<p>Proceed to the <strong>Advanced <\/strong>tab of the <strong>Listing Grid <\/strong>widget. Enter the same <strong>Query ID<\/strong> you used for the filter in the <strong>CSS ID <\/strong>field.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-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\/05\/query-id-applied-to-the-listing-grid-1824x1140-1-1024x640.webp\" alt=\"query id applied to the listing grid\" class=\"wp-image-51943\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-listing-grid-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-listing-grid-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-listing-grid-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-listing-grid-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-listing-grid-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-listing-grid-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>In case you have a custom query applied to the<strong> Listing Grid<\/strong>, apply the same <strong>Query ID<\/strong> to it 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\/05\/query-id-applied-to-the-custom-query-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-custom-query-1824x1140-1-1024x640.webp\" alt=\"query id applied to the custom query\" class=\"wp-image-51944\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-custom-query-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-custom-query-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-custom-query-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-custom-query-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-custom-query-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/query-id-applied-to-the-custom-query-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"check-the-result\">Check the Result<\/h2>\n\n\n\n<p>Ensure you clicked the \u201c<strong>Publish<\/strong>\u201d button on the page where the filter is applied and update the custom query if you used one.\u00a0<\/p>\n\n\n\n<p>On the frontend, the filter is successfully applied to the <strong>Listing Grid<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-applied-on-the-front-1824x1140-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-applied-on-the-front-1824x1140-1-1024x640.webp\" alt=\"filter applied on the front\" class=\"wp-image-51945\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-applied-on-the-front-1824x1140-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-applied-on-the-front-1824x1140-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-applied-on-the-front-1824x1140-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-applied-on-the-front-1824x1140-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-applied-on-the-front-1824x1140-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/filter-applied-on-the-front-1824x1140-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\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-1779970653028\"><strong class=\"schema-faq-question\">Why is my <em>JetSmartFilters <\/em>filter not working with the <strong>Listing Grid<\/strong>?<\/strong> <p class=\"schema-faq-answer\">Usually, this happens because the wrong provider is selected in the <strong>This filter for<\/strong> field. When filtering the <strong>Listing Grid<\/strong> widget\/block\/element, the provider should be set to \u201cJetEngine.\u201d Additionally, ensure that the provider is enabled in <strong><em>WordPress Dashboard > Smart Filters > Settings > General Settings<\/em><\/strong> and that the filter and <strong>Listing Grid<\/strong> are connected correctly.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1779970670662\"><strong class=\"schema-faq-question\">What is the difference between AJAX, Mixed, and Page Reload <strong>Apply Types<\/strong>?<\/strong> <p class=\"schema-faq-answer\">The <strong>Apply Type<\/strong> defines how the filtered results are updated on the page:<br\/>   &#8211; AJAX\u00a0 updates results instantly without reloading the page;<br\/>   &#8211; Mixed updates results without reload and stores filter values in the URL;<br\/>   &#8211; Page Reload refreshes the entire page after applying filters.<br\/>AJAX is commonly used for smooth filtering experiences, while Mixed and Page Reload are helpful when you need shareable filtered URLs or SEO-friendly archive pages.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1779970710068\"><strong class=\"schema-faq-question\">Why does the browser \u201c<strong>Back<\/strong>\u201d button not restore my filtered results?<\/strong> <p class=\"schema-faq-answer\">The behavior depends on the selected <strong>Apply Type<\/strong>.<br\/>With the AJAX <strong>Apply Type<\/strong>, the URL does not change after filtering, so the browser \u201c<strong>Back<\/strong>\u201d button returns users to the previous page instead of the previous filter state.<br\/>The \u201cMixed\u201d and \u201cPage Reload\u201d <strong>Apply Types<\/strong> save filter values in the URL, allowing users to return to previous filtered results using the browser navigation.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1779970725143\"><strong class=\"schema-faq-question\">Do I need to use a <strong>Query ID<\/strong> with the <strong>Listing Grid<\/strong> filter?<\/strong> <p class=\"schema-faq-answer\">For simple setups, a<strong> Query ID<\/strong> is usually unnecessary. However, it becomes important when:<br\/>   &#8211; there are multiple <strong>Listing Grids<\/strong> or filters on the same page;<br\/>   &#8211; you use <strong>Query Builder<\/strong> queries;<br\/>   &#8211; several providers or custom queries are connected on one page.<br\/>In these cases, the same <strong>Query ID<\/strong> should be added to the filter widget\/block\/element, <strong>Listing Grid<\/strong> widget\/block\/element, and custom query settings.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1779970763925\"><strong class=\"schema-faq-question\">Why are some filtered posts missing when using<strong> Load More <\/strong>or <strong>Infinite Scroll<\/strong>?<\/strong> <p class=\"schema-faq-answer\">This usually happens because the <strong>Posts number<\/strong> setting in the<strong> Listing Grid<\/strong> or the<strong> Posts Per Page<\/strong> value in the custom query is smaller than the total number of matching posts. When the available number of loaded posts is limited, filtering may produce incomplete results, duplicated posts, or incorrect pagination behavior.<\/p> <\/div> <\/div>\n\n\n\n<p>That\u2019s it. Now you know how <em>JetSmartFilters<\/em>\u2019 filters work with the <em>JetEngine <\/em><strong>Listing Grid<\/strong> widget\/block\/element on your WordPress site.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This tutorial explains how to use JetSmartFilters widgets with the Listing Grid widget of the JetEngine plugin.<\/p>\n","protected":false},"author":20,"featured_media":0,"template":"","format":"standard","builder-category":[],"article-category":[418],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Use Filters with Listing Grid \u2014 JetSmartFilters<\/title>\n<meta name=\"description\" content=\"Find out how to apply the JetSmartFilters widget to the Listing Grid widget of JetEngine. Allow filtering posts in a listing and events in a calendar.\" \/>\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-use-filters-with-listing-grid\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Use Filters with Listing Grid \u2014 JetSmartFilters\" \/>\n<meta property=\"og:description\" content=\"Find out how to apply the JetSmartFilters widget to the Listing Grid widget of JetEngine. Allow filtering posts in a listing and events in a calendar.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/\" \/>\n<meta property=\"og:site_name\" content=\"Help Center\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-28T14:11:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/checkboxes-filter-settings-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=\"10 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-use-filters-with-listing-grid\/\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/\",\"name\":\"How to Use Filters with Listing Grid \u2014 JetSmartFilters\",\"isPartOf\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#website\"},\"datePublished\":\"2023-02-27T15:13:17+00:00\",\"dateModified\":\"2026-05-28T14:11:17+00:00\",\"description\":\"Find out how to apply the JetSmartFilters widget to the Listing Grid widget of JetEngine. Allow filtering posts in a listing and events in a calendar.\",\"breadcrumb\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#breadcrumb\"},\"mainEntity\":[{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970653028\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970670662\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970710068\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970725143\"},{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970763925\"}],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#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 Use Filters with the Listing Grid Widget\"}]},{\"@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-use-filters-with-listing-grid\/#faq-question-1779970653028\",\"position\":1,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970653028\",\"name\":\"Why is my JetSmartFilters filter not working with the Listing Grid?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Usually, this happens because the wrong provider is selected in the <strong>This filter for<\/strong> field. When filtering the <strong>Listing Grid<\/strong> widget\/block\/element, the provider should be set to \u201cJetEngine.\u201d Additionally, ensure that the provider is enabled in <strong><em>WordPress Dashboard > Smart Filters > Settings > General Settings<\/em><\/strong> and that the filter and <strong>Listing Grid<\/strong> are connected correctly.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970670662\",\"position\":2,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970670662\",\"name\":\"What is the difference between AJAX, Mixed, and Page Reload Apply Types?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"The <strong>Apply Type<\/strong> defines how the filtered results are updated on the page:<br\/>   - AJAX\u00a0 updates results instantly without reloading the page;<br\/>   - Mixed updates results without reload and stores filter values in the URL;<br\/>   - Page Reload refreshes the entire page after applying filters.<br\/>AJAX is commonly used for smooth filtering experiences, while Mixed and Page Reload are helpful when you need shareable filtered URLs or SEO-friendly archive pages.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970710068\",\"position\":3,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970710068\",\"name\":\"Why does the browser \u201cBack\u201d button not restore my filtered results?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"The behavior depends on the selected <strong>Apply Type<\/strong>.<br\/>With the AJAX <strong>Apply Type<\/strong>, the URL does not change after filtering, so the browser \u201c<strong>Back<\/strong>\u201d button returns users to the previous page instead of the previous filter state.<br\/>The \u201cMixed\u201d and \u201cPage Reload\u201d <strong>Apply Types<\/strong> save filter values in the URL, allowing users to return to previous filtered results using the browser navigation.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970725143\",\"position\":4,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970725143\",\"name\":\"Do I need to use a Query ID with the Listing Grid filter?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"For simple setups, a<strong> Query ID<\/strong> is usually unnecessary. However, it becomes important when:<br\/>   - there are multiple <strong>Listing Grids<\/strong> or filters on the same page;<br\/>   - you use <strong>Query Builder<\/strong> queries;<br\/>   - several providers or custom queries are connected on one page.<br\/>In these cases, the same <strong>Query ID<\/strong> should be added to the filter widget\/block\/element, <strong>Listing Grid<\/strong> widget\/block\/element, and custom query settings.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Question\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970763925\",\"position\":5,\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970763925\",\"name\":\"Why are some filtered posts missing when using Load More or Infinite Scroll?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"This usually happens because the <strong>Posts number<\/strong> setting in the<strong> Listing Grid<\/strong> or the<strong> Posts Per Page<\/strong> value in the custom query is smaller than the total number of matching posts. When the available number of loaded posts is limited, filtering may produce incomplete results, duplicated posts, or incorrect pagination behavior.\",\"inLanguage\":\"en-US\"},\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Use Filters with Listing Grid \u2014 JetSmartFilters","description":"Find out how to apply the JetSmartFilters widget to the Listing Grid widget of JetEngine. Allow filtering posts in a listing and events in a calendar.","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-use-filters-with-listing-grid\/","og_locale":"en_US","og_type":"article","og_title":"How to Use Filters with Listing Grid \u2014 JetSmartFilters","og_description":"Find out how to apply the JetSmartFilters widget to the Listing Grid widget of JetEngine. Allow filtering posts in a listing and events in a calendar.","og_url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/","og_site_name":"Help Center","article_modified_time":"2026-05-28T14:11:17+00:00","og_image":[{"url":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2026\/05\/checkboxes-filter-settings-1824x1140-1-1024x640.webp"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["WebPage","FAQPage"],"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/","url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/","name":"How to Use Filters with Listing Grid \u2014 JetSmartFilters","isPartOf":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#website"},"datePublished":"2023-02-27T15:13:17+00:00","dateModified":"2026-05-28T14:11:17+00:00","description":"Find out how to apply the JetSmartFilters widget to the Listing Grid widget of JetEngine. Allow filtering posts in a listing and events in a calendar.","breadcrumb":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#breadcrumb"},"mainEntity":[{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970653028"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970670662"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970710068"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970725143"},{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970763925"}],"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#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 Use Filters with the Listing Grid Widget"}]},{"@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-use-filters-with-listing-grid\/#faq-question-1779970653028","position":1,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970653028","name":"Why is my JetSmartFilters filter not working with the Listing Grid?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"Usually, this happens because the wrong provider is selected in the <strong>This filter for<\/strong> field. When filtering the <strong>Listing Grid<\/strong> widget\/block\/element, the provider should be set to \u201cJetEngine.\u201d Additionally, ensure that the provider is enabled in <strong><em>WordPress Dashboard > Smart Filters > Settings > General Settings<\/em><\/strong> and that the filter and <strong>Listing Grid<\/strong> are connected correctly.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970670662","position":2,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970670662","name":"What is the difference between AJAX, Mixed, and Page Reload Apply Types?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"The <strong>Apply Type<\/strong> defines how the filtered results are updated on the page:<br\/>   - AJAX\u00a0 updates results instantly without reloading the page;<br\/>   - Mixed updates results without reload and stores filter values in the URL;<br\/>   - Page Reload refreshes the entire page after applying filters.<br\/>AJAX is commonly used for smooth filtering experiences, while Mixed and Page Reload are helpful when you need shareable filtered URLs or SEO-friendly archive pages.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970710068","position":3,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970710068","name":"Why does the browser \u201cBack\u201d button not restore my filtered results?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"The behavior depends on the selected <strong>Apply Type<\/strong>.<br\/>With the AJAX <strong>Apply Type<\/strong>, the URL does not change after filtering, so the browser \u201c<strong>Back<\/strong>\u201d button returns users to the previous page instead of the previous filter state.<br\/>The \u201cMixed\u201d and \u201cPage Reload\u201d <strong>Apply Types<\/strong> save filter values in the URL, allowing users to return to previous filtered results using the browser navigation.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970725143","position":4,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970725143","name":"Do I need to use a Query ID with the Listing Grid filter?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"For simple setups, a<strong> Query ID<\/strong> is usually unnecessary. However, it becomes important when:<br\/>   - there are multiple <strong>Listing Grids<\/strong> or filters on the same page;<br\/>   - you use <strong>Query Builder<\/strong> queries;<br\/>   - several providers or custom queries are connected on one page.<br\/>In these cases, the same <strong>Query ID<\/strong> should be added to the filter widget\/block\/element, <strong>Listing Grid<\/strong> widget\/block\/element, and custom query settings.","inLanguage":"en-US"},"inLanguage":"en-US"},{"@type":"Question","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970763925","position":5,"url":"https:\/\/crocoblock.com\/knowledge-base\/jetsmartfilters\/how-to-use-filters-with-listing-grid\/#faq-question-1779970763925","name":"Why are some filtered posts missing when using Load More or Infinite Scroll?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"This usually happens because the <strong>Posts number<\/strong> setting in the<strong> Listing Grid<\/strong> or the<strong> Posts Per Page<\/strong> value in the custom query is smaller than the total number of matching posts. When the available number of loaded posts is limited, filtering may produce incomplete results, duplicated posts, or incorrect pagination behavior.","inLanguage":"en-US"},"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article\/36820"}],"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=36820"}],"wp:term":[{"taxonomy":"builder-category","embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/builder-category?post=36820"},{"taxonomy":"article-category","embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article-category?post=36820"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}