Plugin: Tabs - enable nested tab support

Purpose

Use this plugin when you need to display a tab facet nested inside 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:

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.

When a user changes the refinement on the secondary tab from All results to C, 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 and the user will remain on the Courses tab with C selected.

This plugin makes it easier to implement a browsing experience such as a Directory of services listing for a local government search, or the Program catalog for a university search.

Configuring your tab facets

The main tab facet must be named Tabs (case-sensitive).

The secondary tab facet can be called whatever you wish. Once configured, the plugin will append the main (Tabs) facet selection to the secondary tab.

Usage

Enable the plugin

  1. Select Plugins from the side navigation pane and click on the Tabs - enable nested tab support tile.

  2. From the Location section, select the results page to which you would like to enable this plugin from the Select a results page select list.

The plugin will take effect as soon as you finish running through the plugin setup steps.

Examples

Add an A-Z filter to a people tab

Consider a search where you have a number of tabs including a people tab.

When the people tab is selected you wish to include a control that allows you to only display people with a name starting with a specific letter.

Given an implementation has two tab facets:

  • A tab facet, Tabs, with the value (facet categories) of All results and People.

  • A tab facet, Browse by letter, with the facet categories of A through to Z which is intended to be nested.

This plugin allows you to include the Browse by letter facet as a child of the People tab.

If the People tab was selected, enabling this plugin will convert the toggle URL for the category A from:

https://search.example.com/s/search.html?query=adrian&f.Browse%20by%20letter=A

to:

https://search.example.com/s/search.html?query=adrian&f.Browse%20Pby%20letter=A&f.Tabs%7Cdefault%7Eds-higher-education-people=People

The plugin appends any selected tab facet category from the Tabs facet to the Browse by letter facet categories allowing the tab selection to be maintained.

Change log

[1.1.0]

Changed

  • Updated to the latest version plugin framework (Funnelback shared v16.20) to enable integration with the new plugin management dashboard.