SeoLinkMasking (optional)
https://github.com/magesuite/seo-link-masking
This module allows masking/demasking filter URLs in facet navigation. Link-Masking allows control of which filter values should be followed and crawled by search engines. This allows using the search engine crawling budget more efficiently, which in turn improves the SEO performance
Â
Installation
This module is optional
composer require "creativestyle/magesuite-seo-link-masking" ^1.0.0
Â
User Manual
3.7.7. Facet navigation link-masking
Admin settings
Admin settings can be found in Stores -> Configuration -> MageSuite -> SEO
in Link Masking
tab.
Name | Value | Comment |
---|---|---|
Is Enabled |  Yes/No Default value: No  | By enabling this option, filter links will be "masked" - filter link will not be visible on the storefront and data will be send via POST instead of GET request. |
Default Masking State |  Is Masked/Is Demasked Default value: Is demasked | If "Is Masked" is selected, all filters links will be masked by default. It can be overwritten for each filter link in category edit page. |
Only one filter demasked |  Yes/No Default value: no  | By enabling this option, only one filter will be demasked. If customer choose any filter, the rest will be masked. |
Enable masking for category url on search | Yes/No Default value: no | By enabling this option, category URLs on search result page will be masked. |
Enable hiding of filter names in URL |  Yes/No Default value: no | When enabled, filters in URL will contain only the value, without the key. Example: "domain.com/category?color=blue&size=XS" before, "domain.com/category/blue/XS" after. Warning: Do not use this option when attributes contain the same values, like "color=blue" and "print_color=blue". |
Space replacement character | Default value: | This character will be used instead of space in the option label in the URL. |
Option Separator | Default value | This separator will be used to separate options in multiselect filter. |
Is Utf Friendly Mode Enabled |  Yes/No Default value: no | By enabling this option, filter parameters will be converted to utf friendly format - umlauts characters would converted. |
Excluded characters | Â | These characters will be removed from option label in URL. Example: %!& |
Backend
TODO Add backend documentation
Frontend
A masked link template (magesuite-seo-link-masking/view/frontend/web/template/attribute-filter.html
)
href="#" data-bind="attr: {'data-post': url}
<a href="#" data-bind="attr: {'data-post': url}, visible: count >= 1">
<input type="checkbox"
data-bind="checked: is_selected, attr: {id: id}"
onclick="this.parentNode.click();" />
<label data-bind="attr: {for: id}">
<span data-bind="html: label"></span>
<span class="count" data-bind="text: count, visible: $parent.displayProductCount"></span>
</label>
</a>
Â