translate
Can be used to translate hardcoded texts in your theme, using locale files. It expects you to put a .yml
(YAML) file for each language of your site in the locales
folder. So if your site supports Dutch and English, you should have the following files:
locales/nl.yml
locales/en.yml
These files can then contain translations, given that you keep the same data structure. For example:
locales/nl.yml
footer:
heading: "Welkom bij de footer"
served_by_plate: "Deze website wordt geserveerd door Plate"
contacts:
phone: "Telefoon"
email: "Email"
locales/en.yml
footer:
heading: "Welcome to the footer"
served_by_plate: "This site is served by Plate"
contacts:
phone: "Phone"
email: "Email"
When these files are in place, you can use the translate
filter as follows.
On the Dutch version of the site:
Input:
Output:
On the English version of the site:
Input:
Output:
Warning: When using ‘yes’ or ‘no’ as key values, YAML parses this as true or false. You have to escape the key value with quotes. See following example: