1.3.57
(2026-03-03)
Fixed
- Grouped option rewrites are now cleaned up by the
--actualizecommand when the referenced grouped option no longer exists
1.3.56
(2026-01-21)
Fixed
- Fixed a type error in swatch filter parameter processing when numeric request keys were passed to pattern matching
- Fixed duplicate alias suffixes being appended when saving grouped options — the save plugin now detects unchanged aliases and skips redundant processing
1.3.55
(2025-12-29)
Features
- Product swatches on category listing pages now pre-select the active filter option when browsing via SEO-friendly filter URLs
1.3.54
(2025-12-17)
Improvements
- Optimized memory usage for large catalogs — added in-memory caching for attribute lookups, display mode checks, and category URL rewrites; switched several services to singletons to avoid duplicate instances
Fixed
- Fixed numeric filter aliases (e.g.,
10-20) being misinterpreted as price ranges when using dash separator
1.3.53
(2025-12-15)
Fixed
- Added safety check for malformed URLs that could cause errors when parsing landing page and brand URL paths
1.3.52
(2025-11-26)
Fixed
- Fixed breadcrumbs showing raw parameter-style URLs instead of SEO-friendly URLs on filtered category pages
1.3.51
(2025-11-11)
Fixed
- Fixed search term being lost when filters are applied on a Landing Page that has a configured search query
1.3.50
(2025-10-15)
Fixed
- Fixed 404 errors when using short slash URL format together with a filter prefix — the prefix was being incorrectly counted as a filter segment
1.3.49
(2025-09-19)
Improvements
- Optimized filter alias lookups by caching "not found" results, reducing repeated database queries on pages with many filter options
Fixed
- SEO aliases are no longer generated for non-filterable attributes — the attribute edit page now hides alias fields for these attributes
- Fixed incorrect URL matching when multi-word filter aliases contain the separator character (e.g.,
t-shirtwith dash separator) — the splitting algorithm now uses longest-match-first logic - The
--actualizecommand now also removes rewrites for attributes that are no longer filterable
1.3.48
(2025-09-02)
Fixed
- Fixed 404 errors with short slash URL format caused by incorrect URL path trimming during matching
- Fixed type error when numeric attribute codes were used as filter parameters
1.3.47
(2025-08-29)
Fixed
- Fixed canonical URLs and hreflang tags containing raw query parameters instead of SEO-friendly filter URLs when used with Advanced SEO Suite
1.3.46
(2025-08-26)
Fixed
- Fixed a security issue where unsanitized filter option values could be passed to database queries — special characters are now stripped from filter values
1.3.45
(2025-08-15)
Fixed
- Fixed the "Enable SEO URL" toggle on the attribute edit page having no effect due to a cached configuration value
1.3.44
(2025-08-12)
Improvements
- OnSale filter now uses shorter, more SEO-friendly aliases (
onsale/nosale) instead of the previous verbose format - Reserved built-in aliases are now protected — if a product attribute option generates a conflicting alias, a unique suffix is automatically added
1.3.43
(2025-07-17)
Improvements
- SEO-friendly filter URLs now work correctly on Mirasvit Landing Pages with custom URL suffixes
1.3.42
(2025-05-06)
Features
- Added
--actualizeoption to themirasvit:seo-filter:rewritescommand to remove rewrites for attribute options that no longer exist in the catalog
1.3.41
(2025-04-17)
Features
- Added new "Short Underscore" URL format — produces URLs like
category/option1_option2_option3with underscore-separated filter values
1.3.40
(2025-04-14)
Fixed
- Fixed PHP 8.4 compatibility — updated deprecated implicit nullable parameter type hints
1.3.39
(2025-04-09)
Fixed
- Fixed fatal error when Mirasvit Layered Navigation is not installed but the grouped option alias editor is loaded
1.3.38
(2025-04-08)
Features
- Added ability to set custom SEO aliases for grouped filter options per store view from the admin panel
1.3.37
(2025-04-03)
Fixed
- Fixed 404 errors on Brand Pages when a custom URL suffix is configured — the suffix was not being stripped before parsing filters
1.3.36
(2025-03-31)
Features
- Added five new URL format presets: Short Dash, Short Slash, Long Dash, Long Slash, and Long Colon — each with independently configurable attribute and option separators
Fixed
- Fixed error when Mirasvit Layered Navigation module is disabled but its display mode is referenced
1.3.35
(2025-03-11)
Fixed
- Fixed inconsistent filter ordering in canonical URLs — filters are now always sorted in the same order
- Improved alias conflict detection when saving attributes — in short URL format, the check now also catches conflicts between attribute-level and option-level aliases
1.3.34
(2025-02-17)
Fixed
- Fixed incorrect URLs for text attributes configured with slider display mode — they are now correctly treated as decimal-type filters
- Fixed SEO filter routing interfering with Amasty Quick Order and other excluded paths
- Fixed Cyrillic soft sign character appearing in generated URL aliases
1.3.33
(2025-01-23)
Fixed
- Improved Landing Page URL matching by delegating to the Landing Page module's own URL parser, fixing edge cases in multi-store setups
1.3.32
(2025-01-21)
Fixed
- Fixed apostrophe characters not being removed when generating aliases (e.g., "Women's" no longer produces
women-s) - Fixed Landing Page filter matching on stores with multi-store assignments
1.3.31
(2025-01-14)
Features
- Added ability to enable or disable SEO-friendly filter URLs per individual attribute, independent of the global setting
- ⚠️ New database table
mst_seo_filter_attribute_configstores per-attribute SEO status
1.3.30
(2024-12-27)
Improvements
- Reorganized admin settings panel with clearer labels and descriptions
- Alias duplication warning now shows the conflicting attribute code for easier troubleshooting
Fixed
- Fixed brand page filtering failing when a custom URL suffix is configured
1.3.29
(2024-12-19)
Fixed
- Fixed brand page filtering failing when a custom URL suffix is configured
- Alias duplication warning now shows the conflicting attribute code
1.3.28
(2024-11-26)
Fixed
- Fixed custom price filter alias being ignored — the price filter URL now uses the configured alias instead of the raw attribute code
1.3.27
(2024-11-22)
Fixed
- Fixed alias uniqueness check being too narrow in short URL format — it now validates across all attributes, preventing collisions between attributes
1.3.26
(2024-11-05)
Improvements
- Added compatibility with Mirasvit SEO module for generating correct alternative/hreflang URLs with SEO-friendly filters in multi-store setups
1.3.25
(2024-10-07)
Fixed
- Fixed 404 errors when dash separator is used and one filter alias is a prefix of another (e.g.,
bluevsblue-green) — aliases are now sorted by length to prevent ambiguous matching
1.3.24
(2024-09-26)
Features
- Added "Rewrite Alias Source" setting to control whether aliases are generated individually per store view or inherited from the default store
Fixed
- Fixed brand URL matching being too greedy — partial brand name matches no longer cause incorrect routing
- Fixed dash-separated aliases with multiple options being miscounted during URL parsing
1.3.23
(2024-09-12)
Fixed
- Fixed 404 errors when a category URL with applied filters partially matches a Landing Page URL
- Fixed Landing Page matching when the module is not installed — a module-enabled check is now performed first
1.3.22
(2024-06-12)
Features
- Added hyphen as a new separator option for multi-word filter names (e.g.,
all-weatherinstead ofall_weather)
Fixed
- Fixed price filter aliases colliding with category URL rewrites, causing 404 errors
1.3.21
(2024-05-29)
Fixed
- Fixed inactive Landing Pages still being matched and displayed when filters are applied
- Fixed filter rewrites not working when only a single filter is active
1.3.20
(2024-04-26)
Fixed
- Fixed SEO filter routing incorrectly matching URLs that don't contain the configured filter prefix
1.3.19
(2024-04-15)
Fixed
- Fixed Landing Page URLs missing the store code in multi-store setups
- Fixed filter rewrites appearing inside Landing Page URLs instead of being appended after them
1.3.18
(2024-03-20)
Fixed
- Fixed error when building filter URLs for options that have no rewrite configured
- Fixed 404 errors on Brand Pages when filter aliases contain dashes — the dash-counting logic now correctly accounts for dashes within aliases
1.3.17
(2024-02-26)
Improvements
- Reduced unnecessary database queries during filter URL resolution by skipping redundant alias lookups
1.3.16
(2024-02-21)
Improvements
- Optimized routing process with stricter URL validation — filter URLs are now verified against expected segment counts before processing, reducing false-positive matches
1.3.15
(2024-02-20)
Improvements
- Optimized attribute alias lookups with instance-level caching, reducing database queries when building URLs for multiple filter options of the same attribute
Fixed
- Fixed potential XSS vulnerabilities in admin alias management templates
1.3.14
(2024-01-29)
Features
- Added SEO-friendly filter URL support for Mirasvit Landing Pages
1.3.13
(2024-01-26)
Improvements
- Reduced unnecessary database queries when loading filter rewrites
Fixed
- Fixed 404 errors on category pages when the URL rewrite ends with a trailing slash
1.3.12
(2024-01-16)
Improvements
- Reduced rewrite table size by excluding slider and from-to display mode attributes from rewrite generation
- Fixed search queries being incorrectly treated as filter parameters in URLs
1.3.11
(2024-01-12)
Fixed
- Fixed slider display mode attributes generating unnecessary rewrites that bloated the rewrite table
1.3.10
(2024-01-12)
Fixed
- Fixed cache key collisions between filter aliases that differ only by hyphens vs underscores (e.g.,
blue-skyvsblue_sky)
1.3.9
(2023-11-22)
Fixed
- Fixed trademark and copyright symbols not being properly stripped from generated URL aliases
1.3.8
(2023-11-20)
Fixed
- Fixed URL suffix being removed from paths that don't actually end with it, corrupting non-filter URLs
- Fixed rewrites being regenerated unnecessarily when one already exists for the same option
1.3.7
(2023-11-02)
Fixed
- Fixed duplicate rewrite errors crashing the admin attribute save — conflicts now show a warning and auto-generate a unique alias instead
- Fixed categories with the same URL key on different stores sharing cache entries, causing incorrect filter matching
1.3.6
(2023-10-12)
Fixed
- Fixed double-slash appearing at the end of filter URLs when the URL suffix is a trailing slash
1.3.5
(2023-07-27)
Improvements
- Added ability to programmatically build SEO-friendly filter URLs via
getUrlWithFilters()method - Excluded
available_shipping_methodsattribute from SEO filter configuration
1.3.4
(2023-06-19)
Fixed
- Added
available_shipping_methodsto the attribute exception list to prevent errors on unsupported attribute types
1.3.3
(2023-05-22)
Fixed
- Fixed product view pages returning unexpected responses when a product URL key resembles a category URL with filters
1.3.2
(2023-04-04)
Fixed
- Fixed incorrect filter matching when an attribute and one of its options share the same alias
1.3.1
(2023-03-31)
Fixed
- Fixed additional filters from Mirasvit Layered Navigation (stock, rating, sale) not being recognized in Long URL format
1.3.0
(2023-03-22)
Features
- Added CLI command
mirasvit:seo-filter:rewriteswith--generateand--removeoptions for bulk managing filter URL rewrites - Category filter now uses the category's URL key as its SEO alias instead of raw IDs
- Country of manufacture filter now shows country names instead of country codes in URLs
Improvements
- Special characters (trademark, service mark, registered, copyright) are automatically stripped from generated aliases
1.2.10
(2022-12-20)
Fixed
- Fixed unnecessary numeric suffixes being appended to attribute aliases due to overly broad conflict detection
1.2.9
(2022-11-01)
Fixed
- Fixed filter matching returning incorrect results in multistore environments due to missing store ID filter
1.2.8
(2022-10-21)
Improvements
- Added "Clear all" link for filter options per attribute in Mirasvit Layered Navigation
1.2.7
(2022-10-20)
Features
- Added SEO-friendly URL support for the "Product Attribute Linking" feature in Mirasvit Layered Navigation
1.2.6
(2022-09-29)
Fixed
- Fixed SEO Filters not working on categories that don't have URL rewrites in the
url_rewritetable
1.2.5
(2022-06-20)
Improvements
- Removed deprecated
db_schema_whitelist.jsonto prevent conflicts during upgrades
1.2.4
(2022-06-13)
Fixed
- Fixed inability to save custom attribute aliases in multistore environments
- Fixed incorrect routing on brand pages when a filter option alias matches a brand page URL key
1.2.3
(2022-06-01)
Fixed
- Fixed missing SEO aliases for Sale and New additional filters — these now generate distinct yes/no aliases
1.2.2
(2022-05-27)
Fixed
- Fixed inability to save custom aliases in multistore environments
1.2.1
(2022-05-24)
Improvements
- Optimized router performance by reducing unnecessary database queries during route matching
1.2.0
(2022-05-12)
Improvements
- ⚠️ Switched to Magento declarative database schema — the
mst_seo_filter_rewritetable is now defined indb_schema.xmlinstead of legacy Setup scripts
1.1.24
(2022-04-11)
Fixed
- Fixed filter URLs not working correctly on Brand View pages (Mirasvit Brand module)
1.1.23
(2022-04-06)
Improvements
- Added caching layer for SEO filter rewrites, significantly improving page load performance on filtered pages
Fixed
- Fixed attribute alias being regenerated every time the attribute is saved
1.1.22
(2022-02-23)
Fixed
- Fixed 404 errors when filters are applied on stores that share the same category URL paths but have different category IDs
1.1.21
(2022-02-18)
Fixed
- Fixed slider filter producing incorrect URLs with float/decimal values
1.1.20
(2022-02-11)
Fixed
- Fixed "Call to a member function getRequestPath() on null" error when a category has no URL rewrite
- Fixed "strpos(): Empty needle" error when an empty filter alias is encountered
1.1.19
(2022-02-02)
Fixed
- Fixed 404 errors when a filter alias includes part of the category URL path
- Fixed empty SEO filter rewrites being generated for options with Arabic text
1.1.18
(2022-01-18)
Fixed
- Fixed 404 errors when filters are applied on subcategory pages in certain URL configurations
1.1.17
(2022-01-04)
Fixed
- Fixed incorrect category base URL being used in filter URLs
- Fixed 404 errors when an attribute code matches a category URL key in long URL format
- Fixed price slider not working with long URL format
- Fixed empty aliases being generated for attribute options with blank labels
- Fixed wrong category being matched during filter URL resolution, causing 404 errors
1.1.16
(2021-11-22)
Fixed
- Fixed multiselect filters not working correctly with long URL format
- Fixed inability to remove selected filters from the "clear filter" block when using grouped option display format
1.1.15
(2021-11-11)
Improvements
- Duplicate custom option aliases are now blocked — saving an alias that already exists shows a warning instead of silently creating a conflict
1.1.14
(2021-10-28)
Fixed
- Fixed custom aliases with more than one dash character not being matched correctly
- Fixed slider filter URLs causing 404 errors
1.1.13
(2021-10-15)
Fixed
- Fixed custom aliases containing dashes creating partially duplicated aliases during URL parsing
1.1.12
(2021-08-31)
Fixed
- Fixed price slider filter redirecting to 404 page
1.1.11
(2021-08-19)
Improvements
- Multiselect filter behavior is now configurable per individual attribute instead of being a global setting
1.1.10
(2021-07-20)
Fixed
- Fixed SEO filter prefix causing 404 errors on category filter pages
- Fixed decimal filters (slider, from-to) with long SEO rewrite producing incorrect URLs
1.1.9
(2021-07-06)
Fixed
- Fixed price filter not working correctly with SEO-friendly URLs
1.1.8
(2021-06-23)
Fixed
- Fixed 404 errors on URLs with typos in category path or filter values — invalid URLs now fall through gracefully
- Fixed additional Layered Navigation filters (stock, sale, new) not being recognized in filter URLs
1.1.7
(2021-05-31)
Features
- Added SEO-friendly URL support for Layered Navigation "Grouped Options" feature
Fixed
- Fixed custom aliases containing dashes not being matched correctly
1.1.6
(2021-05-13)
Fixed
- Fixed filter matching failing when option aliases contain dash characters
1.1.5
(2021-04-23)
Fixed
- Fixed filter URLs not working correctly on brand pages
- Fixed "filter by category" not working when SEO filters are active
1.1.4
(2021-04-21)
Features
- Added "Remove existing aliases" button in admin configuration for resetting all SEO filter rewrites
Improvements
- Improved URL handling for multistore setups
1.1.3
(2021-04-13)
Fixed
- Fixed "Array to string conversion" notice when filtering by price
- Fixed "clear URL" link not working correctly on brand pages
1.1.2
(2021-04-06)
Fixed
- Fixed error when loading URL rewrites on the attribute edit page
1.1.1
(2021-03-23)
Fixed
- Fixed issues with disabled categories appearing in filter URL matching
- Fixed pagination parameters appearing in SEO-friendly filter URLs
1.1.0
(2021-03-22)
Features
- Added admin UI for managing SEO filter aliases — new "URL Rewrite" tab on the attribute edit page for viewing and customizing attribute and option aliases
- Added new "Long" URL format option that includes the attribute code in the URL (e.g.,
/category/color/red-blue) - Added configurable URL prefix for filter segments
- Added configurable name separator for multi-word option labels (none, underscore, capital letter)
- ⚠️ Dropped compatibility with Magento 2.1 and 2.2
1.0.29
(2020-12-01)
Fixed
- Fixed brand page URL generation issues when filters are applied
1.0.28
(2020-11-19)
Fixed
- Fixed inability to apply filters on brand pages
1.0.27
(2020-09-08)
Improvements
- Added translation support for admin configuration labels
1.0.26
(2020-09-04)
Features
- Added "applying mode" — GET parameters from the current request are now preserved when constructing filter URLs
1.0.25
(2020-08-20)
Improvements
- Reorganized internal plugin structure for better maintainability
1.0.24
(2020-08-12)
Features
- SEO-friendly filter URLs now work on brand pages (Mirasvit Brand) and "All Products" pages, not just category pages
Fixed
- Fixed
isMultiselectEnabled()returning incorrect value - Fixed second click on an active filter not clearing it
1.0.23
(2020-07-29)
Improvements
- Added compatibility with Magento 2.4
1.0.22
(2020-03-23)
Fixed
- Fixed category filter URL losing other applied filters after selection
1.0.21
(2020-03-12)
Fixed
- Fixed category filter using SEO-friendly URL format when multiselect is enabled — now correctly uses GET parameters to prevent routing issues
1.0.20
(2020-03-10)
Fixed
- Fixed unwanted rewrites being generated for weight and other decimal attributes with dash separator
1.0.19
(2020-03-05)
Improvements
- Special symbols (TM, SM, (R), (C)) are now automatically removed from generated filter URL aliases
1.0.18
(2020-02-20)
Features
- Added configurable custom separator for SEO filter URLs
Fixed
- Fixed multiple filters not being applied simultaneously
- Fixed nested price filter not being displayed or applied correctly
1.0.14
(2019-10-28)
Improvements
- ⚠️ Major internal restructuring — renamed and reorganized all plugin classes into
Plugin/Frontend/*andPlugin/Backend/*namespaces. Removed separate price rewrite table and consolidated into main rewrite system - Disabled SEO-friendly URLs for decimal/slider filter values that were causing errors
1.0.13
(2019-08-09)
Improvements
- Code quality improvements for Magento Marketplace compliance
1.0.12
(2019-06-04)
Fixed
- Fixed empty URLs being generated for Yes/No attribute filter values
- Fixed pagination issues when FishPig WordPress module is installed
- Fixed router incorrectly matching URL rewrite entries with
request_path = .html
1.0.11
(2018-11-29)
Improvements
- Added compatibility with Magento 2.3
1.0.10
(2018-11-15)
Fixed
- Fixed "The attribute model is not defined" error when filtering by certain attribute types
1.0.8
(2018-10-24)
Fixed
- Fixed filter string not being parsed correctly from the URL
- Fixed attribute URLs being rewritten even when the SEO Filter module is disabled
1.0.7
(2018-08-17)
Fixed
- Fixed incorrect filter URLs when a category with the same URL key exists elsewhere in the catalog
1.0.6
(2018-07-17)
Fixed
- Fixed incorrect database index on the price rewrite table causing errors
1.0.5
(2018-07-16)
Fixed
- Fixed "Integrity constraint violation" database error when saving price filter rewrites
- ⚠️ Added separate
mst_seo_filter_price_rewritetable for price filter storage
1.0.4
(2018-05-29)
Fixed
- Fixed "Undefined property: objectManager" error in swatch multiselect filter plugin
1.0.3
(2018-05-23)
Fixed
- Fixed compilation error with swatch filter plugin dependency injection
1.0.2
(2018-05-23)
Fixed
- Fixed incorrect URLs for additional filters in Layered Navigation when using swatch-based multiselect
1.0.1
(2018-05-17)
Fixed
- Fixed error when filtering by stock status attribute
1.0.0
(2018-04-03)
- Initial release