Miva 9.0007 introduces Facets, which are filters you can apply to any list of products to limits what is shown. This allows your customers to limit the search results or category list based on things like price, category, attributes and custom fields.
Example of Facets
Facet Example From a ReadyTheme:
Facets can be added to any product list page in miva including search, categories, related products and product list (all products).
The first step to setup facets on your Miva store is to install the Standard Facets Module under utilities. This module exposes product price, category and attributes as values that can be used as facets.
A common data set to create facets on is Custom Product Field data. This allows you to create facets on things like tech specs, manufacturer, brand, year or any other product data you have stored in custom fields.
To designate a custom field as a facetable field you need to select the facet checkbox when creating or editing the facet:
This tells Miva that you want to make this custom field available as a Facet.
There are two template changes you need to make to use facets on a product list (CTGY, PLST, SRCH). The first one is to assign the item to the page and secondly you need to place the facet item tag where you want the facets to appear. Typically this will be in the left sidebar above or below (or replacing) the category tree:
Facet Layout Template
This facet item calls in the facet layout template which is a global template used across all pages that have the facet item assigned.
It can be edited in the admin under User Interface -> Settings -> Facet Layout Template
Once you have your facets enabled, you manage all facets under Facet Rules. This is found under:
Catalog -> Facet Rules
Facet Rules displays every possible facet in your store across all your products and will allow you to apply rules to the facets such as:
Priority - Order in which the facets appears on the page. The higher number means it will appear closer to the top.
Global Status - Show or Hide - Determines if the facet should show globally which means on any page that implements facets (category, search, product list, etc).
Default Category Status - Show or Hide - For facets displayed at the category level only, determines if it should show or be hidden across all categories. There are category specific facet rules and allow you to override this setting on a per category basis.
Facet Name - The facet name that will appear during runtime to the customer on the website.
Facet Display Type - There are 5 facet types. Some may not be available depending on the type of facet you are creating. Each facet type has a different output and different functionality.
Radio Buttons (single select)
Radio Buttons are single select facets. You can only select one of them at a time.
Checkboxes are multi-select facets, you can select more than one and the result set will show you any products that is any of the facet options selected.
Drop Down List
Drop down lists are single select.
The nested facet type is only used for category facets. If displayed it will show you all the categories the results set is apart of and as you select a category, it will expand to show you the sub-categories to refine your results.
Range Slider is only used for displaying price filters.
Each category allows you to override the global facet rules. This is useful in the case you want a completely different set of facets to display for one category vs another. Say for example for your clothing category the Brand is really important so you have as the first facet. But then for your accessories category the price is the most important, having category level facet rules gives you control to customize the facet display for each category.
Any changes made here will only impact the facet for this one category.
There is also the option to revert any category level changes back to “default” using the revert button:
Miva’s facets follow Google best practices for facets which can be found here: https://webmasters.googleblog.com/2014/02/faceted-navigation-best-and-5-of-worst.html
All facet options are human readable name-value pairs:
The canonical tag is used and always references the root page/category
Facet values that have no results are hidden
Currently all facet values need to be single valued (size = small). However, in a future release we will be adding support for multi-valued facets where you can store multiple facet values in a single custom field. This is useful for things like storing all the year a certain product fits. In that case you can have a single custom field with a delimited list of all the values
Ex: Year: 2000|2001|2015|2016
If using facets on the category level you will also need to add additional hidden inputs to both products per page and sorting to keep the facet selected: