Help translate Ghost (beta)

Question - how to translate admin portal (writing posts, managing pages and so?). Send me files please, I will complete Czech language.

1 Like

Hi! Just to mention that I have supported the Bulgarian translation from the beginning.

1 Like

Hello, I added Kazakh locale for Portal. Waiting for approval:)

Thank you :wave:

1 Like

Ukrainian language support added.
Trying to help a little bit. Giving back to community.


I hope that someday Ghost will have a native multi-language support and for articles also. So, I’ll be able to select in which language I going to write the article

1 Like

I have the exact same problem on my Ghost website. Everything is translated to German, except for those “Choose a plan” and “Month” or “Year” and “Save” text fields…

Hope they fix this soon, but it appears to be a known problem…

I just got the /year, /month (several locations), and Change Plan and Choose Plan strings wrapped. PR in, just waiting on a revision (disagreement on whether / should be in the string) to be merged.

Translators, are there other strings that are still missing? I’m set up to go after them if so. Screen shot appreciated.

@thewolfofallstreetz Can you tell me specifically which screen the “Save” field is on? I got these others.

Wonderful!

The “Save” field is in the portal when the different subscription options are presented for annual payment. In my view, this should be translated with “jetzt sparen” in German. I would not include the % because the % varies depending on the discount and the package.

Just for reference, here are all open translation issues that I discovered and how I would solve them. Again, I think it is also possible to completely delete those strings rather than translate the, if this makes things easier. No content would get lost in my view and it would make a more professional impression as there are no sloppy translation errors and more.

Example 1a: Either completely delete the text field „month“ or translate it correctly to German which is „Monat“

Example 1b: Either completely delete the text field „Save“ or translate it correctly to German which is „jetzt sparen"

Example 2a: Either completely delete the text field „year“ or translate it correctly to German which is „Jahr“

Example 2b: Either completely delete the text field „Save“ or translate it correctly to German which is „jetzt sparen"

Example 3: After login as free member: Either completely delete the text field „Choose a plan“ or translate it correctly to German, e.g. „Tarif wählen"

Example 4: After login as paid member: Either completely delete the text field „Change plan“ or translate it correctly to German, e.g. „Tarif ändern"

Many thanks and all the Best,
Peter

1 Like

Hey Peter,

All the strings you have circled should be wrapped once my PR is merged. They’ll still need translations added, but at least that’ll be possible without touching code. (Just JSON files at that point.)

The missing ‘save’ is actually wrapped, it just isn’t actually translated in the German. I’ll drop in a PR for and the other missing ones you’ve identified.

1 Like

Thank you very much, Cathy. If these are implemented at short notice, I will let you know. In that case, I will be happy to offer you a small compensation as a token of my gratitude.

1 Like

The wrapping of missing strings has been merged and should show up in the next release or two. I put in the PR with the German translations also, but it still needs to be merged. I don’t have any control over when that happens - it’s up to someone on the dev team to merge it and build a new portal release.

1 Like

You are amazing Cathy!

1 Like

Hey translators!
Year, Month, Change plan, and Choose plan (and possibly some other things, too) await your translations to get everything in Portal translated. The strings are ready to go, although it looks like we’re waiting on a version bump on portal.

So… if you did all the translations to your favorite language last week or last month or last year, please take another swing at them, as there are more to do!

Here’s where you can see the current status of your language:

And if you haven’t already done translations, the tutorial at the top of this thread is great. Check it out and you’ll be translating in no time!

While I’ve got your attention: The strings for SEARCH translations are now available! If you can add your translations of the strings in search.json in addition to the new ones in portal.json, that’d be great.

3 Likes

Huge thanks to @Cathy_Sarisky for your help with this! <3

2 Likes

Happy to do it! :)

5.95 is out, and I’m loving these release notes

(excerpted below - full version here):

  • :sparkles: Added i18n support to search - ready for translator work! (#21055) - Cathy Sarisky
  • :bug::globe_with_meridians: Added missing locales to i18n.js (#21144) - Cathy Sarisky
  • :globe_with_meridians: Added Estonian translations (#21129) - WindTheWhisperer
  • :globe_with_meridians: Added new Brazilian Portuguese new i18n strings (#21101) - Sérgio Spagnuolo
  • :globe_with_meridians: Updated Turkish translation (#21110) - Mertcan GÖKGÖZ
  • :globe_with_meridians: Added Bulgarian translation for search (#21102) - Stanislav Traykov
  • :globe_with_meridians: Bulgarian translation updates (Sep 2024) (#21062) - Yovko Lambrev
  • :globe_with_meridians: German translations (#21050) - Cathy Sarisky
  • :globe_with_meridians: Updated Gaelic portal / search translations (#21093) - Chris Mitchell
  • :globe_with_meridians: Update pt-BR translation of search.json (#21100) - Alexandre “Lekler” Rodrigues

However, the German translations are misattributed - they’re the work of @thewolfofallstreetz :slight_smile: Sorry to (accidentally) steal your thunder.

I’m aware of PRs for Ukranian, pt-BR (portal), Spanish (sign-up), that look to me like they’re in ready to merge state, and there are a bunch of other language PRs that are close but waiting on the contributor to respond to something.

If you’ve got an old PR for language translations that hasn’t been merged, you can help get it merged by sync-ing your branch and dealing with any merge conflicts, and adding translations to new strings, all of which will speed the process along! :) If we can make it so that the dev team only has to touch each language once, that’d be awesome. Here’s how to update your fork: Syncing a fork - GitHub Docs

Notes: Ghost Pro users get their updates on Monday/Tuesday. It looks like we’re also waiting for the dev team to bump the version & re-release search (hopefully Monday?) before some of those translations above will actually be available via CDN.

Observation: We have a lot of languages where two or more mostly-identical PRs got submitted, probably exacerbated by unmerged PRs. If you want to add or improve a language, PLEASE check for an existing PR first. Thanks. :)

3 Likes

Hey I was wondering how to enable i18n and is there a way to manually add translations for the search bar at least on my side ? Kind regards

Hey @russkiimike!

Search is translatable now! The new release builds tomorrow, and if your language has translations strings for it, you’ll see it live when you update (or Monday/Tuesday if on Ghost Pro).

Here’s the repo with all the translation strings. Ghost/ghost/i18n/locales at main · TryGhost/Ghost · GitHub

If your language isn’t translated or the translations need work, the first post in this thread tells you how to help! If you were to get me something for search (assuming your language needs it) in the next couple hours, I might be able to sneak it into tomorrow’s build… if later than that, it’ll go into the following release.

p.s. For Portal (membership), you’ll need to turn on i18n in /ghost > settings > labs. And for any i18n, make sure you’ve got your site language set, also available in /settings.

1 Like

Hey, no thats cool just added some translations on a pull request , thank you :) Awesome work

The translation into Brazilian Portuguese is working! Many thanks to you and the translators! @Cathy_Sarisky @lekler

2 Likes

So glad to hear! I was disappointed when it wasn’t available last week [code was done but release wasn’t triggered], so I’m glad you’re finding it good now!

pt-BR is entirely translated based on the strings that have been identified, so if you’re seeing any English anywhere (that isn’t from your theme or the Stripe payments page), please report it!

Our other fully-translated language is Bulgarian. Hmm… maybe I should have sorted the translations list by number of strings translated, instead of alphabetically…

1 Like

I noticed the Dutch is behind, I’ll block some time for this in the coming week

1 Like