ITG Filter Easy
ITG Filter Easy is an Elementor widget for WooCommerce product filtering. It works as a sidebar filter — it does not output products itself, but modifies the existing WooCommerce Products widget output via URL parameters and pre_get_posts, with full AJAX support (no page reload).
Key features:
- Filter by categories, attributes (pa_*), price range, brand, stock status, sale, and text search
- AJAX update — product list refreshes without page reload
- Faceted counts — option counts update after each filter change
- Browser history support — Back / Forward navigation works correctly
- Brand currency conversion — prices stored in brand currency are auto-converted to the WooCommerce active currency using a configurable exchange rate feed
- Auto-filter mode — applies filters instantly on change without a submit button
- 5 translations bundled: Russian, German, French, Spanish, Chinese
- 16 developer filter hooks
- HPOS (High-Performance Order Storage) compatible
Configuration
All settings are managed in WooCommerce → ITG Filter (not in the widget itself). The widget only exposes the Products selector control.
Structure tab
Defines which filters appear in the widget and in what order. Drag rows to reorder.
Fields: Attribute, Display type (checkbox / radio / button / select / multiselect / range), Label, Heading, Open, Count, Sort, „All“ option, Items, Hint.
Built-in filter types: Category, Price, Brand, Sort by, Stock, Sale, Text search. Product attributes (pa_*) are listed automatically.
Options tab
Auto-filter, Hide empty, Shadow under group heading, Show hints, Group icon side, Group icon style, Brand currency, Exchange rate URL.
Advanced tab
Shows the current plugin version and update source URL.
Developer Hooks
Settings
itg_flt_defaults— Override default settings valuesitg_flt_settings— Filter the full settings array after loading
Currency
itg_flt_brand_currency— Override the currency code for a brand termitg_flt_pivot_rate— Override the exchange rate for a currency codeitg_flt_converted_price— Filter the final converted priceitg_flt_convert_price_enabled— Disable price conversion for specific products
Query
itg_flt_allowed_orderby— Add custom orderby values to the whitelistitg_flt_sanitize_params— Post-process sanitized filter parametersitg_flt_tax_query— Modify tax_query before it is applied to WP_Queryitg_flt_meta_query— Modify meta_query before it is applied to WP_Queryitg_flt_filtered_counts— Post-process the faceted term counts array
AJAX
itg_flt_ajax_query_args— Modify WP_Query args before the AJAX product query runsitg_flt_ajax_response— Modify the AJAX JSON response before it is sent
Price
itg_flt_price_range— Override the computed min/max price range for the slideritg_flt_price_range_cache_ttl— Change the transient cache lifetime for the price range
Frontend
itg_flt_script_data— Add extra data to the JS object passed to the frontend script
