Live search on any Loop Grid
Type in the filter field and results update after 800ms. The filter runs a server-side LIKE query against the custom field you specify — no client-side JavaScript filtering, no stale data.

[ Experience and content ]
Live text search for Elementor Loop Grid — filter by custom field, URL-persistent, pagination-safe. One widget, one setting.
Works with Elementor

[B] Baqueiro Loop Filter
Elementor Pro’s Loop Grid is powerful — but it has no built-in search or filter widget. Every workaround either breaks pagination, loses the filter on page refresh, or requires a separate plugin with a 200-setting configuration panel. [B] Baqueiro Loop Filter solves it cleanly: one widget, one setting, zero configuration overhead.
You build a Loop Grid to display a custom post type — team members, properties, courses, products, portfolio items. The client asks: “Can users search or filter by name?” You say yes. Then you spend two hours trying to wire up AJAX, figure out why pagination breaks, and explain why the filter resets on page load.
The standard solutions are over-engineered. JetSmartFilters, FacetWP, and similar tools are built for complex multi-filter scenarios. If all you need is a text search against one or two custom fields — you’re paying for and configuring ten features you’ll never use.
And if you try to build it yourself? You’re fighting Elementor’s query hooks, URL parameter sanitisation, and debounce timing on a per-project basis. Every. Single. Time.
[B] Baqueiro Loop Filter is a native Elementor widget that adds a text search field to any page containing a Loop Grid. You configure the custom field meta key to filter against, drop the widget on the page, and it works — including pagination.
The filter value is written into the URL as a query parameter. That means the filtered state survives page refresh, can be bookmarked, and works correctly with Elementor’s native Loop Grid pagination. No AJAX session state to manage. No hidden fields. No JavaScript frameworks.
The widget integrates with Elementor’s standard Controls Manager, so typography, text colour, and spacing are all styled directly from the Elementor Style panel — no custom CSS required unless you want it.
LIKE query against that field. Partial matches work out of the box.__like to the meta key for partial matching (default), or use the exact key for strict equality filtering.JetSmartFilters costs €39/year per site and requires configuring filter providers, indexing, and AJAX endpoints. FacetWP starts at $99/year and has a full learning curve. A custom implementation takes a senior developer 3–5 hours per project at €80–€120/hour.
[B] Baqueiro Loop Filter starts at €29/year. If you build even one Elementor site per year that needs a Loop Grid filter, it pays for itself in the first hour.
This plugin is written and maintained by a senior developer with 18+ years of experience. It hooks into Elementor’s official query API — no core hacks, no monkey-patching. If it doesn’t work as described on your Elementor Pro site, you get your money back.
Type in the filter field and results update after 800ms. The filter runs a server-side LIKE query against the custom field you specify — no client-side JavaScript filtering, no stale data.
The search value is a URL parameter. Pagination works correctly. The browser back button works. Visitors can bookmark or share filtered result pages. Zero session state to manage.
Place two or three filter widgets on the same page, each targeting a different custom field. All active filters are combined in a single query modification — clean, predictable, and deduplication-safe.
Typography, font size, weight, colour — all controlled from the widget's Style tab like any native Elementor widget. No external CSS file to override or specificity battle to win.
No filter providers. No AJAX endpoints. No indexing. No cron jobs. One field in the widget settings (the meta key), and the filter works. Setup time is under 2 minutes.
Let visitors search team members by name or role on a Loop Grid listing. One filter widget, one meta key — done in 2 minutes.
Filter a Loop Grid of courses, documents, or resources by title keyword or category field. Works with any CPT and any custom field.
Add a search field to a Loop Grid of real estate listings, products, or services filtered by a specific attribute stored in postmeta.
Let visitors filter portfolio items by client name, industry, or tag stored as a custom field — with pagination that actually works.
Upload the plugin ZIP via Plugins → Add New and activate. Elementor Pro must already be active — the plugin shows an admin notice if it is not found.
In Elementor, open your Loop Grid widget settings. Under the Query section, set the Query ID field to "my_loop". This is the hook the filter widget listens to.
Search for "Baqueiro Loop Filter" in the Elementor widget panel (under the Baqueiro Widgets category) and drag it onto the page — above or beside the Loop Grid.
In the widget's Content settings, enter the custom field (postmeta) key you want to filter against. For example: "product_name" or "team_member_role". Save and publish.
Visit the page on the frontend, type in the filter field, and watch the Loop Grid update after 800ms. Navigate to page 2 of filtered results — the filter persists correctly.
Compare against common Elementor filtering solutions
| Aspect | Baqueiro Loop Filter | Other solutions |
|---|---|---|
| Works with Elementor Loop Grid natively | Yes — hooks into Elementor's official query API | JetSmartFilters / FacetWP require separate provider setup |
| Pagination works after filtering | Yes — filter value stored in URL, travels with pagination | AJAX-based filters often break native WP pagination |
| Filter state bookmarkable / shareable | Yes — URL parameter approach | AJAX state is not in the URL by default |
| Setup time | Under 2 minutes — one meta key field | 15–60 minutes for provider, index, and widget config |
| Styled inside Elementor | Yes — native Controls Manager integration | Custom CSS or separate style settings outside Elementor |
| Annual cost (single site) | €29/year | JetSmartFilters €39/yr · FacetWP $99/yr · Custom dev €240–€600 |
Elementor Pro is required. The Loop Grid widget — which this plugin filters — is a Pro feature. The plugin checks for Elementor Pro on activation and shows an admin notice if it is not found.
In your Loop Grid settings in Elementor, set the Query ID to "my_loop" (or "my_loop_key"). Then drop the Baqueiro Loop Filter widget anywhere on the same page and set the Meta Key to the custom field you want to filter. That's it — no AJAX endpoints, no shortcode IDs, no provider configuration.
Yes. The filter value is stored in the URL as a query parameter. When the user navigates to page 2 of the filtered results, the filter parameter travels with the URL and is reapplied to the query. This is the correct, server-side approach — not a client-side AJAX workaround that breaks on deep pagination.
Yes. Place multiple Baqueiro Loop Filter widgets on the page, each with a different Meta Key. All active filter values are combined with AND logic in the Loop Grid query — posts must match all active filters to appear in the results.
By default the filter uses a LIKE query, so partial matches work — typing "mar" will match "Maria", "Marketing", and "Margarida". If you need exact matching (for dropdowns or checkbox filters), remove the __like suffix from the meta key in the widget settings.
The plugin hooks into Elementor's official elementor/query action — the same API Elementor documents for custom query modifications. It does not patch Elementor core files. As long as Elementor maintains this API (which they have across all major versions), the plugin continues to work.