Best method for multilanguage sites?

We are planning to make a pt-br version of our web and I’m thinking if we should make another instance of Ghost or keeping the current one and route as mentioned here, or another solution.
In your experience, what do you suggest?
Which one was your biggest pain in the a… while doing that?
THanks in advance, regards from Chile :chile:

I suggest to try weglot integration and map tags/categories from your router or javascript if you-re self-hosting.

They recently updated portal and e-mails strings, so I suspect the total language core inclusion is not closer but that was a big step for sure :slight_smile:

1 Like

I would go with separate Ghost installs. That allows you to use separate languages for portal, newsletter, transactional emails, etc. While segregating YOUR content by language is possible in the same install, getting the right language to come out everywhere is going to be a LOT easier in split installs. If you want them all at the same domain, consider using reverse proxy to rewrite en.yoursite.tld/{slug} to yoursite.tld/en/{slug}

2 Likes

Interesting solution, but under my case I think it could bring some “lost in translation”, as a whole solution but it could be really useful for content which is cross-site or standard, like static pages or short entries. I’ll give it a try anyways, I’ll share my conclusions after.
Thank you very much.

I have a custom setup using kubernetes, a custom image based on docker’s official one, very close to the upstream approach and versioning. You can see it
Here on sredevops

I think I’m going though your approach, and I was considering your same logic, under a single instance it would require more maintaining and unnecessary complexity when you face an issue.

Thanks, 'll be back with some conclusions.

Keep in mind that’s not official but supported for the community. You don’t expect any support using that more than Github Issues.

IMHO using two instances for translation are too much resources wasted for a simple task that could be developed with some yml routing, handlebars and/or javascript implementations.

I know it’s not supported, this is why I’m looking for advice and feedback over a decision and not support in the way it should be done :slight_smile: but thaks anyway for mentioning, it copuld be useful for anpother person in the same situation.

In my case it’s not a waste of resources because they aren’t used while the instance isn’t using resources, or network traffic, is one of the advantages of kubernetes and containerized logic. As the documentation described here clustering is not supported and I risk errors, so while I keep only 1 replica, it shpould be OK and this is how I’ve been done the last few months with my two websites.
I’m no expert coding, but I work as SRE, so the approach of coding a non-standard feature would take me a lot of time.

Thanks for your advice, is appreciated :slight_smile:

1 Like