Language translation of the entire website

Hello,
I’m trying to translate the entire website with a drop-down menu (from English to French).

My dynamic data source is in English, but I want to translate it to French when the user selects another language.

What are the best practices in the moment ?
(I don’t think App Texts is suitable for my case…)

Otherwise, with Cloud Translate via the API connector, can I create and save a new French version of the App data when I translate from English to French?
Is it posssible ?

Thanks in advance!

I’m afraid the best practice is using App Texts, setting a language field in you User datatype and defining an OptionSet with language ISO codes. Is there any particular reason why you don’t consider using this method?

I haven’t used this method myself so maybe some other person can chip in.

Thank you for your reply!

You’re right, App Texts might be a good solution.

At first, I thought App Texts would be better for translating short content, but I’ll try this method.

I have a lot of long text strings like articles and descriptions, so I was hoping to make it dynamic and proceed…

If you have any other good ideas, please don’t hesitate to tell me.

Thank you so much for your quick reply! I was worried, but now I’m motivated! :folded_hands:

This sounds like content that’s stored in DB.

You indeed can’t use App Texts for DB stored text translations.

You have two options:

  1. Store an extra field in the same datatype containing the same text in another language, e.g. content_en-us, content_fr-fr… and use a User’s language field to decide on which field to show. This is not the best choice WU consumption wise, since you download bigger records than necessary from DB.
  2. Create new satellite datatypes to store the translated content, linked to a search datatype, e.g. Article, Article_fr-fr, Article_en-us… Again, based on a User’s language field, you decide which datatype to retrieve from DB.
  3. Dynamic translations via API. This has the downside of not being accurate translations, while incurs in extra WU consumption since you have to call an external API each time you want a translation.

I’d personally prefer to go for option 2.

Thanks again for your very helpful advice.

Yes, exactly!

Actually, I started with option 1 (as you mentioned), but again, you’re right. I didn’t think about WU consumption.
Option 2 might be better, so I’ll start again.

Thanks for your interesting link too! :smiley: