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:
1
2
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
1
2
3
4
5
6
footer:
heading: "Welkom bij de footer"
served_by_plate: "Deze website wordt geserveerd door Plate"
contacts:
phone: "Telefoon"
email: "Email"
locales/en.yml
1
2
3
4
5
6
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:
1
2
{{ "footer.heading" | translate }}
{{ "footer.contacts.phone" | translate }}
Output:
1
2
Welkom bij de footer
Telefoon
On the English version of the site:
Input:
1
2
{{ "footer.heading" | translate }}
{{ "footer.contacts.phone" | translate }}
Output:
1
2
Welcome to the footer
Phone