Localization in product spaces
Product spaces use localized names of spaces, pages, and widgets when there are available translations for the names.
When you create a space, page, or widget, the item gets a language-specific name. The name can come from a definition contained within the system or it can be a name that you provide. If you provide a name in one language, that name serves as a default name for the other languages. The default name is just a placeholder until a language-appropriate name replaces it. When you provide a name in a different language, the default name is overwritten with the new name but only for that specific language. The other languages are not affected. When you export a space, the resulting .zip file includes all names in all languages for the space, its pages, and its widgets. When you export a page, the resulting .zip file includes all names in all languages for the page and its widgets.
For example, if your browser is set to English and you create a space, the name that you give it applies to all languages. If you change your browser language to French and then you rename the space, all users who have their browser language set to French and then open that space sees the new French name. All users who have their browser language set to any other language see the original English name because it is the default. To support multiple languages, you need to change browser languages and rename the space in each language.
Your name change are preserved. For example, you export the space that you renamed in French. Everyone who has their browser locale set to French and imports the space sees the French name that you gave it. Everyone who has their browser locale set to any other language sees the space name in that language if the space was renamed in that language or the default name if the space was not renamed. The default name could be from a different language if the space was created in a different language.
Your action | Current language | Other languages |
---|---|---|
Create a space | Uses the name that you give to the space when you create it | Uses the same name as the current language as a default |
Import a space | Uses the name that was defined in the imported space | Uses the name that was defined in the imported space |
Rename a space | Changes to the new name | No change |
The behavior of how the page names are handled is similar to how the space names are handled. One difference is that there are multiple ways in which you can create a page but the general principle remains the same: if the name exists in the current language, the name is displayed. The name might be a translation that someone has provided or it might be a default name awaiting replacement with a language-appropriate name.
Your action | Current language | Other languages |
---|---|---|
Create a page (as a result of duplicating an existing space) | Uses the name that was given to the page in the original space | Uses the name that was given to the page in the original space |
Create a page (as a result of creating a space using a template) | Uses the name that was given to the page in the template | Uses the name that was given to the page in the template |
Create a page (as a result of creating a blank space or adding a page to the open space) | Uses the name that you give to the page when you create it | Uses the same name as the current language as a default |
Create a page (as a result of duplicating a page in the Space Manager) | Appends "Copy of" to the beginning of the original name | Uses the same name as the current language as a default |
Import a page (directly or as a result of importing a space) | Uses the name that was defined in the imported page | Uses the values that was defined in the imported page |
Rename a page | Changes to the new name | No change |
Widget names also have a similar behavior to space and page names. The names of widget instances are stored independently, so changing the name of one widget instance does not affect another instance in any language.
Your action | Current language | Other languages |
---|---|---|
Add a widget (as a result of using the palette) | Uses the name that was defined for the language | Uses the name defined for the language |
Add a widget (as a result of duplicating a page, importing a page, or creating a space using a template) | Uses the name that was given to the widget in the original page, imported page, or template | Uses the name that was given to the widget in the original page, imported page, or template |
Rename a widget | Changes to the new name | No change |