I have a multi lingual site. Search results work fine for English, French and German, but for Chinese, Korean and Japanese, no results are returned.
I think maybe I am indexing incorrectly. When I search, if I set supported language to Chinese, I get no results, but if I set supported language to English, I get my Chinese results.
Here is my query:
ar query = this.SearchClient.UnifiedSearchFor(q, Language.English)
.TermsFacetFor(x => x.SearchSection)
.FilterFacet("AllSections", x => x.SearchSection.Exists())
.Filter(x => !x.MatchTypeHierarchy(typeof(MediaData)))
Changing the supported language parameter to the actual language returns no results.
How do I ensure I am indexing multiple languages correctly?
When you say you may be indexing incorrectly - have you made customisaitons fo the Search and Navigation indexing that may affect languages?
Check the content of your search and navigation index here:
There should be an index item for each language version of a piece of content.
Are you able to confirm if Chinese versions of content are indexed here?
So, it looks to me like Chinese content is indexed - so Im confused as to why it doesnt get returned when I set the supported language in my Query.
I think the second paramter to UnifiedSearchFor is only the analyzer being used for stemming etc?
FilterForVisitor includes PublishedInCurrentLanguage and should filter away content not in the current language.
Try without this line?