Develop with the SiteSeeker search integration for EPiServer

6/7/2013

Introduktion, Installation, EPiServer

The Search integration for EPiServer makes it easy and fun to start develop useful and exciting search functionality as a part of an EPiServer website.

In this document, we will share experiences from us and our partners and best practices on how to work efficiently with search integration and SiteSeeker, as well as achieving a result above and beyond expectations!

workflow

Before you begin

Before you start your development work, make sure you have the following in place:

  • A development environment with EPiServer installed
  • A SiteSeeker server that can index your development site
  • The installation library for the SiteSeeker search integration for EPiServer

You will also need a backlog or a specification for the search page and search function, as well as an outline or graphical layout for the search page. In order to test selection, coverage and relevancy in the search function, you will also need somewhat authentic content for the website – however, it does not need to be complete.

Work flow

1. Start by installing SiteSeeker Search Integration for EPiServer. You will find a detailed installation guide at the download page or in the installation archive, or you may use NuGet for the most streamlined process. Read more about configuring the integration module. During the installation, you will configure SiteSeeker to index your development environment and connect your development environment to SiteSeeker. For this to work properly, the SiteSeeker server needs access your development environment. We strongly recommend that you consult your IT-support function before starting the installation. Should you run into any problems during the installation process, we have a troubleshooting guide for the Search Integration for EPiServer that might be helpful.

2. When the search integration is installed, you can start integrating the website, SiteSeeker and the search page. It is often appropriate to use a backlog, specification, etc. as a starting point, and implement one function at a time. Consider search for all features and sections on the website, for example, calendars and document archives (in this context, you might have to limit the indexing in order to get a relevant selection). For a tested and proven work flow, follow this:

1. Start by adjusting the website, for example, a meta attribute or markup of breadcrumbs. Example: Add a meta tag which outputs the name of the "author".

2. After that, configure SiteSeeker (if necessary) and start a new indexing. Generally, this is preferably done using the crawling mode "full" if you have done any changes to the website. Example: Use SiteSeeker Admin to define that the attribute "author" should be indexed.

3. When the index is updated, you modify the search page in EPiServer. In the case of meta attributes it could mean to print the attribute in the search result information. Example: Output the attribute for "author".

4. Finally, test to see that the change in question is displayed on the search page. Example: Make sure that "author" is shown on the search page.

3. When you have gone through all items in the backlog, you need to check that the search contents meets all requirements. This means to control that the search works well, both from an interaction perspective and the actual search results. In order to carry out this test, it is necessary to have test content which you can make searchable – to assure that the coverage and relevancy is good enough and that potential drill-down features (like facets) are fully functioning. To support you, we have a check list for search interfaces

4. If you are copying files from your development environment, do not forget to include all files for search integration. Version 3 of the search integration store data in the EPiServer database (for example about which search index is used) – this information must also be copied (and possibly updated) when deploying. We recommend that you use a different index for acceptance testing than for the development environment.