0

I am creating a multilingual SharePoint Online site, so I activated site language on the site and added Czech as a language.

I am able to translate pages without issue and the correct page language displays when a user goes to the page.

The issue I have is to do with lists, specifically the managed metadata field.

Language Packs have been activated in the termstore and Czech has been added as a Working Language.

I have then added the Czech translation against various terms.

The following scenarios then occur:

  • When a Czech user goes to the list the base language (English) is displayed for the term items
  • When a Czech user edits the value in managed metadata field, they see the Czech translation, but when they select it, the displayed value is back in English
  • When a Czech user performs a search using the Czech word nothing is found
  • When a Czech user performs a search using the English word the item is found

note : The search is done using the standard sharepoint search (at the top) and also when using the Modern Search webpart extension (v3) link to Modern Search Webpart

Is this expected behaviour?? if not I would be extremely grateful if someone could assist or direct me in the right way to rectify the issue?

If it is expected behaviour what is the point in have translations for termstore items if the ONLY time they can be seen is when a user edits a field in the list??

2 Answers 2

0

On the site where the list is located, is Czech an alternate language? What UI elements appear in Czech when the Czech user goes to the site? Menus? Navigation? Column headers?

What determines a "Czech user"? Is it the display language in the user profile or the browser language setting?

1
  • ............... Commented Feb 27, 2022 at 22:44
0

I have since found out the this is expected behaviour and that :

Results (and the search index) will only store the language of term matching the default language of the site where the item is. It's been like this since SP2013. Which means you can only get recall on the language of this term, not when querying in another language.

To get around this limitation I have done the following which resolves the issue and allows users to search for terms in ANY language and it returns the correct tagged items.

To achieve this I created a multiline text column, mapped it to a new managed property that is set to searchable.

Then using power automate, I make some http calls on each managed metadata column in the list, which gets ALL terms in the associated termset including all languages and synonyms.

I then append each found value to an array variable, which I then write to the multiline text field.

Now search indexes the multiline text field and returns results even if a user searches in a different language.

Not exactly what I thought I would have to do, but it works..

SharePoint really should index all languages and synonyms in the termstore so this is done by OOTB

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.