Language-Specific Search Experiences


Introduction

A Search App can be configured to offer a Search Experience tailored to the viewer’s preferred language.

These Search Experiences offer the language-specific benefits of analytics, synonyms, stopwords, relevance modeling, ranking, result and display fields, promotions–and many other features–that should differ from the default English search experience.

In addition, one can use the Theme Editor to customize the search screen, providing “local language” labels and instructions for your users. Each language has its own Hosted Search App for searching.

The Search App can serve queries and record user events for multiple languages simultaneously.

Available Languages

Language-specific experiences can be configured for:

LanguageDrupal*SitecoreCustom
Arabic (ar)Sitecore 10.0+
Bulgarian (bg)
Catalan (ca)Sitecore 10.0+
Simplified Chinese (zh-cn)Sitecore 10.0+
Traditional Chinese (zh)Sitecore 10.0+
Croatian (hr)
Czech (cs)
Danish (da)
Dutch (nl)
English (en)
English – Canada (en-ca)Sitecore 10.0+
English – Hong Kong (en-hk)Sitecore 10.0+
English – United Kingdom (en-gb)Sitecore 10.0+
Estonian (et)Sitecore 10.0+
Finnish (fi)
French (fr)
French – Canada (fr-ca)Sitecore 10.0+
German (de)
Greek (el)
Hindi (hi)Sitecore 10.0+
Hungarian (hu)
Indonesian (id)Sitecore 10.0+
Irish (ga)Sitecore 10.0+
Italian (it)Sitecore 10.0+
Japanese (ja)
Korean (ko)Sitecore 10.0+
Latvian (lv)
Norwegian (no)Sitecore 10.0+
Persian (fa)Sitecore 10.0+
Polish (pl)Sitecore 9.3+
Portuguese (pt)
Romanian (ro)
Russian (ru)Sitecore 10.0+
Slovak (sk)
Spanish (es)
Spanish – Latin America (es-419)Sitecore 10.0+
Swedish (sv)
Thai (th)Sitecore 10.0+
Turkish (tr)
Ukrainian (uk)Sitecore 10.0+
Vietnamese (vi)Sitecore 10.0+
* Solr 8.0 and above

The default language experience of all Search Apps is English (en).

Components of a Specific-Language Experience

When a Search App has multiple languages, each one includes a complete Search Experience profile. That is, each of the enabled languages has its own:

Adding Language-Specific Experiences

To add a language, navigate to the correct Search App and open its Settings.

Select the App Summary tab and click the Manage Languages button.

On the next screen, click the Add Language button. Select an available language from the list, and click the next Add Language button.

Be sure to Save the changes. It can take half a minute for the Search App to build the infrastructure to support the new language experience.

Once a language is added, you should configure the App for the language – at a minimum the Results Configuration and a Relevance Model that is set up and set as the Default.

Managing Fields for Custom Apps

In order to support multiple languages on a Custom App, you will need to make sure your fields are formatted in a compatible way with Studio. This involves customizing your schema to include fields of the proper type. These fields can then be used to store and index data in different languages and types as per the specific requirements of your app.

The dynamic fields for supported languages are already present in your schema as follows:

 <dynamicField name="*_txt_es" type="text_es"  indexed="true"  stored="true"/>
 

The snippet above is for the Spanish language, but the same format applies to all available language types.

For all fields you intend to analyze for stemming, stopwords, synonyms, etc, use the format above. These are fields you typically use as display and search fields.

If you don’t require to analyze the field, e.g. faceting, exact match, then you can use the string type as follows _es_s.

Delete a Language from the Search App

It is also possible to delete a language from a Search App. Select the checkbox beside the language and then click the trashcan icon.

Removing a language from a Search App permanently deletes all of the language-specific Search Experience settings, and also the Analytics data that was collected through that Search Experience. You can re-add the language later, but the previous work cannot be recovered.

Setting the “Default” Language

The Languages table and the Add Language dialog box mention a “default” language. This is the language-specific Search Experience that will be used when the Search App receives a query with no language parameter specified.

You can change the default language by using the radio buttons on the Languages screen. Be sure to Save the change.

There is also a checkbox on the Add Language dialog that has the same effect. Again, after adding the language to the Search App you must remember to Save the changes.

Building a Language-Specific Experience

When you open a Search App for editing in the Studio, you must select which language-specific Search Experience to work on. You can edit only one language experience at a time. (You can switch from one language to another as long as you remember to save your changes.)

Pull down the language droplist above the Create button:

From that point on, building the Search Experience is the same for all language selections. Field boosting, for instance, works the same way for English, French, and Spanish experiences. Again, be sure to save your changes.

Language-Specific Searching

Now that you’ve built a language-specific Search Experience, how can you put it in front of your users?

Navigate to the App Settings, and then to the Hosted Search App tab. This tab displays the URL of the Hosted Search App that serves the selected language.

In the image above, we selected “ES” (Spanish) as the selected language. Studio then displayed the URL of the Spanish Hosted Search App. When your search users follow that URL, they will see the Spanish Search Experience.

Select a different language from the Language droplist and the URL will change to match that language.

Questions?

Do not hesitate to contact the SearchStax Support Desk.