Plugin: tabs-enable-nested-tab-support
Other versions of this plugin may exist. Please ensure you are viewing the documentation for the version that you are currently using. If you are not running the latest version of your plugin we recommend upgrading. See: list of all available versions of this plugin. |
This plugin adds support for having one tab facet nested under another tab facet.
A key property of tabbed facets is that they are generated so that all other facet selections are removed. Although desirable in most cases, it does not cater for the scenario where a nested tab is required.
For example, by default, the product behaves in the following manner:
Given
-
A search implementation with a primary tab which has three categories; All results, courses and web.
-
A user is on the course tab and wants to browse all available courses by letter.
-
A secondary tab facet is populated with A to Z (i.e. All results, A, B, C, D) facet categories which allows the user to refine by letter.
Radio facets can’t be used here as we want to show facet categories even if there are no corresponding results. |
When
-
A user changes the refinement from "All results" to "C".
Then
-
The user will be sent back to the default tab (All results). i.e. The selected tab of "courses" will be lost.
This plugin changes the behaviour by keeping certain facet selections.
-
The user will remain on the "courses" tab with "C" selected.
This plugin makes it easier to implement a browsing experience such as the Directory of Services listing for Local Government or the Program Catalog for Higher Education.
Prerequisite
The plugin expects that tabs are set up using a Tabbed
facet which is named "Tabs"
(case-sensitive).
Configuration
The following parameter keys need to be added to the results page to enable the plugin.
plugin.tabs-enable-nested-tab-support.enabled=true
plugin.tabs-enable-nested-tab-support.version=1.0.0
There are no configurations available for this plugin. This plugin will modify any Tabbed facets which do not have the name "Tabs" and assume them to be nested.
Example
Provide the ability to browse people alphabetically (A-Z).
Given an implementation has two tab facets:
-
A primary "Tabs" facet with the value (facet categories) of "All results" and "People".
-
A secondary "Browse People By Letter" facet with the facet categories of "A" through to "Z" which is intended to be nested.
If the "People" tab was selected, enabling this plugin will convert the toggle URL for the category "A" from
https://<funnelback_server>/s/search.html?query=test&f.Browse%20People%20By%20Letter=A
to this
https://<funnelback_server>/s/search.html?query=test&f.Browse%20People%20By%20Letter=A&f.Tabs%7Cdefault%7Eds-higher-education-people=People
The plugin essentially appends any selected tab facet category to the "Browse People By Letter" facet categories allowing the tab selection to be maintained.