Profile-based faceted navigation
This article applies to Funnelback 15.6 and earlier. From Funnelback 15.8 all faceted navigation is treated as profile (or configuration) based. |
Background
Traditionally, faceted navigation has been configured at the collection level in Funnelback. This article shows the steps required to configure faceted navigation on a profile level allowing for multiple faceted navigation configurations to be applied to a collection.
Configuration steps
The following steps detail the setup for profile based faceted navigation:
-
Add
collection.cfg
option to swtich to using conf level faceted navigation.faceted_navigation.config.location=conf
This causes the UI to read faceted nav params from the
faceted_navigation.cfg
file instead of from the live/idx folder.Note:
-
switching on this disables the use of
faceted_navigation.xml
-
a collection level faceted navigation.cfg will override any profile defined
faceted_navigation.cfg
files (this is a reported bug). Upon initial setup it is a good idea to move the collection level faceted navigation file into the default profile.
-
-
Move your faceted navigation config files into the relevant profile folders.
Enable gscope/date/URL fill facet editing per profile via the admin UI
Additional configuration of the administration interface is required if you wish to edit non-metadata based facets via the administration interface.
If you need to have gscope, URL fill or date based facets, but also want to edit via the admin UI you’ll need to edit the file: $SEARCH_HOME/web/admin/js/facetednavigationeditor/categorytypes-perprofile.js
You can’t add Metadata Fill, XML Item Fill or Query Fill facets - these won’t work because they rely on dynamic assignment of metadata classes or gscopes at index time. |
Add a code block for the gscope items: (can see the code required from the categorytypes.js
file which is used by the standard editor.
[
{
"label": "Metadata Field Fill (e.g. f)",
"code": "MetadataFieldFill"
},
{
"label": "GScope Item (e.g. Books)",
"code": "GScopeItem"
},
{
"label": "Date Field Fill (e.g. d)",
"code": "DateFieldFill"
},
{
"label": "URL Fill (e.g. http://my.company.com)",
"code": "URLFill"
}
]