HomeDev guideRecipesAPI Reference
Dev guideUser GuidesLegal TermsNuGetDev CommunityOptimizely AcademySubmit a ticketLog In
Dev guide

Add menu options and user interface views

Describes how to set up the shell module, which adds the menu options and user interface views available for Optimizely Search & Navigation to your solution.

Configure shell module

The shell module must be configured so that user interface options are visible. When you have created an index, you get an email with an episerver.find section that you add to the site's web.config (CMS 11) or appsettings.json (CMS 12). The Optimizely shell module registration and configuration are done automatically when you install using NuGet packages.

Below are the changes made to the configuration when you installed the packages.

Register Search & Navigation module

<episerver.shell>
  <publicModules rootPath="~/modules/" autoDiscovery="Minimal" />
  <protectedModules rootPath="~/epiui/">
    <strong>
      <add name="Find">
        <assemblies>
          <add assembly="EPiServer.Find.Framework" />
          <add assembly="EPiServer.Find.Cms" />
        </assemblies>
      </add>
    </strong>
    <add name="Shell" />
    <add name="CMS" />
  </protectedModules>
</episerver.shell>

Add handler for embedded resources

<location path="EPiServerFindEmbeddedResources">
  <system.webServer>
    <handlers>
      <clear />
      <add name="wildcard" path="*" verb="*" type="EPiServer.Web.StaticFileHandler, EPiServer.Framework" />
    </handlers>
  </system.webServer>
</location>

Access rights

Access to views in the shell module is restricted to users in one of three groups:

  • WebAdmins
  • Administrators
  • SearchAdmins (Search & Navigation-specific)

📘

Note

The first two groups have Admin view access in Optimizely Content Management System (CMS), and access to shell module views by default. To grant users without administrator access, create the SearchAdmins group for the membership and role provider you are using, and add those users to it.

Supported browsers

The shell module relies heavily on CSS 3, so only modern browsers are supported. See the system requirements for Optimizely.

Added views

When properly configured, the shell module adds the views and subviews described below to the editing interface.

Manage statistics

This view shows Search statistics for the most frequent searches, searches without hits, and searches without relevant hits. Statistics can be displayed for the last 24 hours, week, month, or year.

Manage optimization

  • Best Bets – Can be site and language-specific or site and language-independent, depending on choices made in the site and language drop-downs (near the top of the view).

    📘

    Note

    To apply Best bets to search results, you must apply an ApplyBestBets extension method.

  • Related queries – Can be site and language-specific or site and language-independent.

    📘

    Note

    To use related queries, you must apply a DidYouMean method.

  • Synonyms – Can be language-specific or apply to any language, but cannot be site-specific.

    📘

    Note

    To use synonyms, you must apply a UsingSynonyms extension method.

Configure

  • Boost with weights – Provides a form for fine-tuning weights of different content parts in search results. Site and language independent.
  • .NET indexing – Lets you clear data stored in the index and index statistics.
  • Connectors – Provides a view for creating and listing connectors.

Overview and explore views

The Overview and Explore views let you browse indexed content, displaying information about indexed documents count grouped by type. Filtering by type and arbitrary search query is supported.