﻿{"id":216,"date":"2026-03-03T20:06:09","date_gmt":"2026-03-03T19:06:09","guid":{"rendered":"https:\/\/baqueiro.es\/store\/?post_type=baqueiro_plugin&#038;p=216"},"modified":"2026-03-05T15:28:25","modified_gmt":"2026-03-05T14:28:25","slug":"b-elementor-applied-filters","status":"publish","type":"baqueiro_plugin","link":"https:\/\/baqueiro.es\/store\/plugins\/b-elementor-applied-filters\/","title":{"rendered":"[B] Elementor Applied Filters \u2014 Active Filter Tags for Elementor Loop Grid"},"content":{"rendered":"<section class=\"bq-hero\">\n<h1>Show Active Filters. Let Visitors Remove Them. One Widget.<\/h1>\n<p class=\"lead\">You built a filtered Loop Grid. Visitors apply two or three filters and now cannot remember what they set \u2014 or how to clear just one without losing the others. <strong>[B] Elementor Applied Filters<\/strong> solves that: it reads the active filters from the URL and renders a row of removable tag pills, each with an \u00d7 button that removes only that filter and keeps everything else intact.<\/p>\n<\/section>\n<section class=\"bq-problem\">\n<h2>The UX Problem Nobody Talks About<\/h2>\n<p>You added search and filter widgets to your Elementor Loop Grid. They work. But the moment a visitor applies more than one filter, usability drops \u2014 there is no visual indication of what is currently active, and no way to remove a single filter without clearing the entire URL by hand.<\/p>\n<p>On a real estate listing, a job board, a product catalogue, or a course library \u2014 users apply filters progressively. If removing one filter means losing all the others, they either give up or refresh and start over. Both outcomes hurt conversion.<\/p>\n<\/section>\n<section class=\"bq-solution\">\n<h2>Active Filter Tags, Fully Styled Inside Elementor<\/h2>\n<p><strong>[B] Elementor Applied Filters<\/strong> is a native Elementor widget that reads active filter values from the URL, maps them to human-readable labels, and renders them as styled tag pills \u2014 each with a working \u00d7 remove button that generates the correct URL to remove only that filter.<\/p>\n<p>The remove logic handles single values, checkbox arrays, range min\/max filters, and LIKE text searches. It correctly reconstructs the URL after removal, resets pagination to page 1, and cleans up the <code>my_filters<\/code> parameter entirely when no filters remain.<\/p>\n<p>Every visual element \u2014 title, tag pill background, text, padding, border radius, remove button colour, and hover state \u2014 is controlled from the Elementor Style panel.<\/p>\n<\/section>\n<section class=\"bq-bullets\">\n<h2>What It Does<\/h2>\n<ul>\n<li><strong>Reads active filters from the URL automatically<\/strong> \u2014 no manual sync. The widget inspects the current <code>my_filters<\/code> URL parameters and renders a pill for each active value.<\/li>\n<li><strong>Custom label mapping per meta key<\/strong> \u2014 map raw meta keys to human-readable labels via a repeater control. Map &#8220;qtd_dormitorios&#8221; to &#8220;Bedrooms&#8221;, &#8220;preco__min&#8221; to &#8220;Price Min&#8221;.<\/li>\n<li><strong>Smart suffix detection<\/strong> \u2014 automatically appends &#8220;Min.&#8221; or &#8220;Max.&#8221; context for range filter keys ending in <code>__min<\/code> or <code>__max<\/code>.<\/li>\n<li><strong>Remove a single filter without clearing the rest<\/strong> \u2014 the \u00d7 link reconstructs the full URL with only that one filter removed. Pagination resets. All other filters remain.<\/li>\n<li><strong>Handles single values, arrays, and ranges<\/strong> \u2014 works with text search, dropdowns, checkbox groups, and numeric range filters.<\/li>\n<li><strong>Configurable empty state message<\/strong> \u2014 shown when no filters are active, keeping the layout informative for first-time visitors.<\/li>\n<li><strong>Fully styled inside Elementor<\/strong> \u2014 all visual controls exposed natively in the Style tab. No external CSS needed.<\/li>\n<\/ul>\n<\/section>\n<section class=\"bq-anchor\">\n<h2>Designed to Work Alongside [B] Baqueiro Loop Filter<\/h2>\n<p>This widget is the natural companion to <strong>[B] Baqueiro Loop Filter<\/strong>. Together they form a complete filtering UX on any Elementor Loop Grid page \u2014 search input, active filter display, and one-click individual removal \u2014 with no AJAX and no third-party filter suite.<\/p>\n<p>Sold separately so you only pay for what you use.<\/p>\n<\/section>\n<section class=\"bq-guarantee\">\n<h2>Our Guarantee<\/h2>\n<p>Built by a senior developer with 18+ years of experience using Elementor&#8217;s official widget API. If it does not work as described on your Elementor site, you get your money back.<\/p>\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>Show visitors exactly which filters are active \u2014 as removable tag pills, styled directly inside Elementor. Click a tag to remove that filter instantly, keeping all others intact.<\/p>\n","protected":false},"featured_media":252,"template":"","plugin_category":[38,87,100],"use_case":[75,88,89,78,97],"license_type":[71],"compatibility":[92,101,99,90,93,94],"class_list":["post-216","baqueiro_plugin","type-baqueiro_plugin","status-publish","has-post-thumbnail","hentry","plugin_category-elementor","plugin_category-search-filter","plugin_category-ux","use_case-agencies","use_case-developers","use_case-directories","use_case-e-commerce","use_case-real-estate","license_type-commercial","compatibility-acf","compatibility-b-baqueiro-loop-filter","compatibility-elementor-free","compatibility-elementor-pro","compatibility-metabox","compatibility-pods"],"_links":{"self":[{"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/baqueiro_plugin\/216","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/baqueiro_plugin"}],"about":[{"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/types\/baqueiro_plugin"}],"version-history":[{"count":1,"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/baqueiro_plugin\/216\/revisions"}],"predecessor-version":[{"id":253,"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/baqueiro_plugin\/216\/revisions\/253"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/media\/252"}],"wp:attachment":[{"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/media?parent=216"}],"wp:term":[{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/plugin_category?post=216"},{"taxonomy":"use_case","embeddable":true,"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/use_case?post=216"},{"taxonomy":"license_type","embeddable":true,"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/license_type?post=216"},{"taxonomy":"compatibility","embeddable":true,"href":"https:\/\/baqueiro.es\/store\/wp-json\/wp\/v2\/compatibility?post=216"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}