By popular demand, we’re introducing translatable components for the membership and email features in Ghost. Previously: Your entire site might be in Spanish, but the Portal signup UI and login emails would all be in English. Now: It’s possible to translate those elements into your chosen language so your members have a consistent experience.
This is a beta. The translation system is pretty basic/minimal at the moment, but we plan to improve it over time.
What can be translated
- Portal - the member signup/signin/account management user interface
- System emails - the signup/login emails sent to members
- Injected theme components - for example “you need to be a paid member to read this post”
Call for translators
The Ghost core team has already submitted translations for most of the languages we speak, and we’d love your help expanding translations for any languages that you’d like to use on your sites. Any translation you submit will be usable by you personally, as well as anyone else who speaks that language.
How to submit a new translation
Adding support for new languages to Ghost involves using GitHub, but you don’t need to be a developer to be able to participate. We’ve put together a complete tutorial for anyone who wants to get involved and add new translations to Ghost:
You can see which languages have already been added, here:
https://github.com/TryGhost/Ghost/tree/main/ghost/i18n/locales
If a language you speak has already been added, you can follow the exact same steps as in the video above — but rather than create a new folder, review files in the existing folder and make any changes there if there are missing translations if you have suggestions for improvements.
If you need to look up the locale code for a language you’ll be adding, you can find a list of supported ISO639-1 locale codes below.
https://www.w3schools.com/tags/ref_language_codes.asp
*Note: We don’t (yet) support RTL languages
If you’re working on translations for a particular locale, leave a note on this topic so others know you’re working on it. If two people end up submitting translations for the same language, at the same time, we’ll default to accepting translations on a first-come-first-served basis — but we’ll try to merge translations where possible or applicable.
If someone submits a translation before you, it’s still really valuable if you can help review/improve the translations.
Feel free to leave any notes below if you get stuck or need help, and hopefully everyone can help each other out.