November Happy Hour will be moved to Thursday December 5th.


Version: Episerver Find for Episerver Commerce 1 R3                       Release date: Mar 20, 2013

About this Release

This download provides the installation package for installing the search provider Episerver Find with Episerver Commerce 1 R3. The package includes the compiled binaries with the necessary binaries for Commerce 1 R3.

The core files and sample templates for Episerver Commerce 1 R3 are downloaded separately.

Prerequisites

The following is required for installing Episerver Find for Commerce:

  • A running Episerver Commerce 1 R3 site.
  • An Episerver Find index:
    - Go to the Episerver Find site to create a developer index.
    - Create an account, log in and select the "Add Developer Service" option.
    - When setting up the index service, make sure to include the languages that the Commerce test catalog will index.
    - On the index details page, copy the serviceUrl and defaultIndex values from the sample web.config snippet.
    - Other designated test indexes for Find can also be used.

Installation

Follow the steps below to install Episerver Find on an Episerver Commerce 1 R3 site.

Step 1. Download and extract the installation files.

Step 2. Add the EPiServer.Business.Commerce.FindSearchProviderf.dll, EPiServer.Find.dll, and Newtonsoft.Json.dll to the bin directory (from either the Distribution/Debug or Distribution/Release directory in the installation package).

Note: They may need to be added into two bin directories if there are separate front-end and Commerce Manager sites.

Step 3. Configure the Mediachase.Search.config file in the environment (again, there may be two).

The important parts to set are:

  • Set the defaultProvider attribute of the SearchProviders element to “FindSearchProvider”.
  • Add the FindSearchProvider element to the <providers> section.
  • Set the serviceUrl and defaultIndex attributes to point to the Find index.
  • In the indexers section, change the catalog indexer’s type attribute to match the FindSearchIndexBuilder type, as shown in the sample configuration file (see above).

Step 4. In the Commerce Manager site, go to Administration in the left menu, and open Systems Settings. Click Search Index to rebuild the index. The search should now be using the Find service.

Index Configuration

Episerver Find is a hosted search solution. To configure the Episerver Find provider for Commerce, you will first need to create an index at find.episerver.com. Once your index is created, go to the details page for the index, and make a note of the values for "serviceUrl" and "defaultIndex" from the sample web.config.

Episerver Commerce Configuration

To configure the Episerver Find provider for Commerce, edit the Mediachase.Search.config file for your implementation.

1. Set the defaultProvider attribute in the SearchProviders element to FindSearchProvider.

2. Ensure the following element exists in the Providers section, and update the serviceUrl and defaultIndex values to match the values from the index details page at find.episerver.com:

<add name="FindSearchProvider"
    type="EPiServer.Business.Commerce.FindSearchProvider.FindSearchProvider, EPiServer.Business.Commerce.FindSearchProvider"
    serviceUrl="(set the serviceUrl here)"
    defaultIndex="(set the defaultIndex here)"/>

3. Change the element in the indexers section to use appropriate index builder for the find service:

<Indexers basePath="(the preexisting path)">
    &ltadd name="catalog" type="Mediachase.Search.Extensions.Indexers.CatalogIndexBuilder, Mediachase.Search.Extensions" />
</Indexers>

4. Rebuild your search index from the Commerce Manager search interface.

Notes

The Find search provider for Commerce only matches the basic query string against fields of type integer or string. While catalog metafields of type float, double, or decimal may be marked as "Include in Default Search" in the metafield configuration interface, these fields will not be matched against the basic query string.

All other querying (filters, queries, or faceting against specific fields) functionality will work on metafields of type float, double, or decimal. If matching against these type of data is desired from the basic query string, we recommend storing the data in a string-typed metafield, and marking that field as "Include in Default Search."

Related Information