Creating Dictionary Items in Umbraco
Depending on how your site is set up, not all content is edited through the Content section. There might be some text in your templates or macros that needs translation. Using Dictionary Items, you can store a value for each language. Dictionary Items have a unique key that is used to fetch the value of the Dictionary Item.
Dictionary Items can be managed from the Translation section. Let's take a look at an example. In this example, we will translate "Welcome to Umbraco" from within the template and add it to the dictionary:
To add a Dictionary Item:
Go to the Translation section.
Click on Dictionary in the Translation tree and select Create.
Enter the Name for the dictionary item. Let's say Welcome.
Click Create.
Enter the values for the different language versions.
Click Save.
To group dictionary items:
Go to the Translation section.
Click on Dictionary in the Translation tree and select Create.
Enter the Name for the dictionary item. Let's say Contact.
Click Create.
Click on Contact and select Create.
Enter the Name of the item to be created under the Contact group.
Click Create.
Enter the values for the different language versions.
Click Save.
To edit a dictionary item, follow these steps:
Go to the Translation section.
Use the Dictionary tree to locate the item you need to update/edit.
Alternatively, you can use the search field in the top-right corner.
Make the edits you need to make.
Click Save to save the changes.
It will only be possible to edit the language(s) that the given user has access to. The value of the remaining languages will be read-only.
Which language a user has access to is determined by the "Language permissions" set on the User Group. Learn more about this feature in the Users article.
In some cases, you might want to render the dictionary values in the Document Type. This is to display the labels depending on the language configured for the logged-in user.
To use dictionary values in the Document Type, follow these steps:
Go to the Settings section.
Open the Document Type where you want to use the Dictionary value.
Locate the label and type #MyDictionaryKey
. For example: #Welcome
or #WelcomeDescription
.
Click Save.
Go to the Content section.
View the content node using the Welcome property. The property will display the dictionary value per the user's configured backoffice language.
You can translate tabs and property groups in the backoffice as well. For more information, see How to Translate Umbraco Backoffice Document Types video.
To fetch dictionary values in the template, replace the text with the following snippet:
Alternatively, you can specify an altText
which will be returned if the dictionary value is empty.
In some cases, you might want to use the same Dictionary Items on multiple Umbraco websites. For this, you can use the export and import functionality to quickly copy the items from one website to another.
Go to the Translation section in the Umbraco backoffice.
Locate the Dictionary Item (or group) you want to copy in the section tree.
Right-click the item.
Select Export....
Decide whether you want to also include descendants.
Click Export.
This will download a .udt
file which you can use to import the Dictionary items on another Umbraco website.
Go to the **Translation section in the Umbraco backoffice.
Right-click on the top of the Dictionary tree.
Select Import....
Click on Import.
Find and select the .udt
file containing the Dictionary Items.
Click Open in the file browser.
Review the Dictionary Items for import.
Choose where to import the items.
Click on Import.
The Dictionary Items have now been added to your website.
To use Dictionary Items in a multilingual website, see the Creating a Multilingual Site article.