Results pages

A results page is used by Funnelback to display a set of search results to an end user.

It contains configuration and templating relating to a search results page provided by Funnelback and includes:

  • Templating for the search results

  • Display settings that define properties about what is displayed by Funnelback (e.g. what metadata fields to return, how to sort the search results).

  • Ranking settings that define how the order of search results will be determined.

  • Feature configuration such as faceted navigation, auto-completion and extra searches that will be used to supplement the search results.

Reporting such as usage analytics, content and accessibility auditing is also produced for each results page

A results page is similar to a service-enabled profile from older versions of Funnelback.

Create a results page

  1. From the admin dashboard home page locate your search package in the main listing.

  2. Click on the results pages tab for the search package.

  3. Click the add results page button

  4. Enter a name for the results page

  5. Review the choices you have made then click finish to create the results page.

The same process can be used to add additional results pages.

Configure a results page

The results page configuration screen is accessed in the following way:

  1. From the admin dashboard home page locate your search search package in the main listing.

  2. Click on the results pages tab for the search package.

  3. Click on the name of the results page that you wish to edit, or select configuration from the settings menu.

The configuration screen provides options to:

Setting the results page name and thumbnail

Results page name

The results page name, used in the marketing dashboard, can be set by editing the profile options of the results page and setting a value for the service.title configuration option.

Results page thumbnail

The thumbnail image for the results page, displayed in the marketing dashboard, is managed using an API (/admin-api/service/v1/services/{service}/thumbnail). Please note that this API is not currently available via the API-UI and must be called directly.

The following call sets the thumbnail image:

PUT https://funnelback-admin-server.example.com:8443/admin-api/service/v1/services/{service}/thumbnail
Only the following image formats are accepted: .jpg,.png and .gif.

e.g. Set the thumbnail image for the website results page on the sp-websearch search package by uploading a local image file using curl.

curl -H "Content-Type: image/jpeg" -H "X-Security-Token: EXAMPLE-API-TOKEN" -T ./example-image.jpg 'https://funnelback-admin-server.example.com:8443/admin-api/service/v1/services/exampleclient~sp-websearch:website/thumbnail'

The following call removes the thumbnail image:

DELETE https://funnelback-admin-server.example.com:8443/admin-api/service/v1/services/{service}/thumbnail

e.g. Remove the thumbnail image for the website results page on the sp-websearch search package:

curl -H "Content-Type: image/jpeg" -H "X-Security-Token: EXAMPLE-API-TOKEN" -X DELETE 'https://funnelback-admin-server.example.com:8443/admin-api/service/v1/services/exampleclient~sp-websearch:website/thumbnail'

Results page analytics and reporting

Analytics and content reporting can also be accessed from the search results configuration screen, providing access to:

Creating data source specific templating

If your search package comprises a number of different data source types, for example a web plus a database data source, then the search results will be a heterogeneous mix of records. The results page templates should use an <#if /> FreeMarker clause to identify the data source and format the record appropriately.

For example, if you had a database collection called library you could format results differently with the following:

<#if r.collection == "library">
  <a href="${r.cacheUrl}">${r.title}</a>
  <b>Library Record</b> - ${r.date?date?string.short}
  <#if r.listMetadata["y"]?first??>
    <span class="summary_label">ISBN:</span><${r.listMetadata["y"]?first!}<br />
  </#if>
</#if>
<#if r.collection != "library">
  <a href="${r.cacheUrl}">${r.title}</a>
  <b>Other Record</b> - ${r.date?date?string.short}
  <#if r.listMetadata["a"]?first??>
    <span class="summary_label">Author:</span><${r.listMetadata["a"]?first!}<br />
  </#if>
</#if>

Note that r.cacheUrl is used for the links to the library records as they are the rows extracted from the database (as XML files).

Search package scoping and ranking options

Scoping search results to a subset of data sources

Search results can be restricted to a subset of data sources at query time by supplying the clive CGI parameter or results page option.

Example: restrict results to the intranet and staffdir data sources of the internal-search search package:

Using CGI clive parameter(s):

http://FUNNELBACK_SERVER/s/search.html?collection=internal-search&query=hr&clive=intranet,staffdir

or

http://FUNNELBACK_SERVER/s/search.html?collection=internal-search&query=hr&clive=intranet&clive=staffdir

Using a query processor option, set in the results page options, specifying -clive parameters for each data source:

-clive=intranet -clive=staff

Filter the search results by data source

Filtering of results by data source can be achieved by configuring faceted navigation with category values based on source collection.

Same collection suppression

Same collection suppression is a result diversification option that allows the down-weighting of consecutive results from the same data source.

Up-weighting or down-weighting results from a data source

It is possible to up-weight or down-weighting results based on the data source that they are sourced from.

Document level security

If any of the selected base collections have early binding document level security, the following option must be added to the results page configuration for the search package to maintain security processing.

security.earlybinding.user-to-key-mapper=Meta

© 2015- Squiz Pty Ltd