Language Profiles | Yext Hitchhikers Platform
What You’ll Learn
In this section, you will learn:
- What are multi-language experiences
- How do multi-language profiles work
- How to enable in your account
Many brands, even those that operate within a single country, must build digital search experiences and websites that serve more than a single language. As a marketer, it’s important to be able to reach your customers using – quite literally – their own language. Good news, Yext can help with that!
How does it work
Like the rest of Yext products, it all starts with the Knowledge Graph. In the Knowledge Graph, you can turn on the Multi-Language Profiles account feature (in Account Settings > Account Features) which allows you to store content in as many languages as you want for each entity.
Each consumer-facing product – whether that’s Search, Pages, Listings or Reviews – can then take in that data and produce a version of an experience in each language.
Let’s take a real example.
Yext conducts business all over the globe and our Knowledge Graph can support many languages in order to align with our customer base. These languages include:
- Chinese (simplified)
Let’s take a look at an entity, like our Search product entity.
You’ll see that there’s a “Languages” module on the right side of the Entity Edit that is like a “control center” for languages. “English” is highlighted because that’s the profile that we’re on right now, but this entity also has profiles for German, French, Japanese and Chinese (simplified). If I click to view the German profile, it looks like this:
You can see that all of the string fields are translated. Fields like Entity ID or hours don’t require translation. Other fields like Business Logo or Name are optionally translated. We’ll get into more details about how Fields work in the next unit.
Under the hood, an Entity really looks like a collection of the language profiles:
When we generate a page, search experience or listing based off this entity, the Pages, Search and Listings systems will pull the right profile based on Language code(s) desired by the endpoints:
And it produces end-states like this
All based on the same entity!
We’ll go into detail about how each product handles multi-language profiles and experiences in the Multi-Language Pages , Multi-Language Search , and Multi-Language Listings modules.
What are Language Profiles
As we learned above, an Entity is really a collection of language profiles. A language profile is a version of an entity that is scoped to a specific language. Profiles contain fields which are made up of content and content is often inherently tied to language.
By default, your entities just come with one primary profile and you don’t have to think about or worry about language at all. But, if you want to start building multi-language experiences, you’ll need to create additional language profiles for your entities.
In Knowledge Graph, we provide a large number of language profiles to choose from. These options are structured based on the official ISO codes as “[languageCode]_[countryCode]” to create a “[localeCode]“. You can also choose to select a language profile that is agnostic to country so just “[languageCode]”. For example, here are some options for english:
In terms of what to choose, there are important consequences of what you choose and you need to be thoughtful about it – but the good thing is that is it’s very easy to change a locale for your profile. You can read more about the implications in each of the product-specific modules, but in general, consistency is very important. If you don’t need to account for any language differences by country, we recommend using the simple language code, like “en”, “fr”, “ja”, or “de” — simple is usually the best option.
Locales and Languages
In general, it’s important to understand the difference between a pure language and a locale in technology. Locale is language dimensioned by country. Locale can account for regional differences in language – for example, in “en_us” you would write “behavior” but in “en_gb” you would write “behaviour”. But, it’s more than just dialect differences – locale has implications around date formatting, currencies, etc.
In Yext, on the Knowledge Graph side, while some of our language options are dimensioned by country we call the options Languages as we don’t incorporate any differences in terms of things like currency or formatting (those are dimensioned based on the entity’s country, not the country in the language). That said, other downstream products like Pages or our Listings publishers may use the country portion of the language in a meaningful way so it’s important to understand.
Enabling Multi-Language Profiles
First off, to be able to add profiles in multiple languages, you’ll need to turn on the product feature. You can turn on the Multi-Language Profiles feature in Account Settings > Account Features:
Managing Language Profiles for Entities
When you navigate to Entity Edit (in single edit or bulk edit), you’ll see a “Languages” module.
This is your command center for your languages where you can see the profile language for the entity or entities you’re on and add or view additional profile languages. We’ll deep dive into this in Units 3 and 4.
Default Primary Language & Available Languages
By default, when you create a new entity, we will use your account’s default primary language, which is based on your account’s default country and not based on the entity’s country. For example, if you’re based in the US, by default your profiles will be “en”; if you’re based in France, by default your profiles will be “fr”.
You can find this in your Account Settings > Personal Settings in “Account Information”. As you’ll learn, it’s easy to change an entity’s primary language so don’t worry too much about this!
The languages available to you to pick from when you are managing language profiles might vary depending on your account type. Some accounts are scoped to have a limited set of language profiles available. If you have any questions or concerns, you can reach out to Support or post in the Community .
Entity Country vs. Locale
As mentioned, your locale might include a country code (like en vs. en_ca vs. en_gb). This is completely separate from the entity’s country. In Knowledge Graph, country is a required field to help determine things like currency, payment options or default timezone. If you don’t need to support experiences by country for a single language, we recommend using just the simple language code like “en”.
Don’t Get Confused by Display Language
If you go to Account Settings > Personal Settings you’ll also see an option for Display Language which by default is set to “Use Browser Default”. This is to change the language of the Yext Platform and not of your entities. The default setting will adjust the language of the Yext platform based on the detected browser language. If you want to see the platform in a language other than your browser’s, you can switch it to a specific language using the dropdown at any time. The Display Language will change the translated entity type or field names, but it won’t change anything about your content or the navigation between profiles.