Multi linguistic site


How do I make my site multi linguistic?


Hi Pieter,

multi-language sites are complex for a few reasons:

  • you need to work with a translator, who most likely won’t be using Sparkle
  • you need to account for the translated text having different size than the original, so this means reshuffling the layout
  • Sparkle doesn’t currently have per-language privacy and search result pages, so this suggests using separate Sparkle projects for each language
  • separate Sparkle projects mean you risk the style drifting in different directions

The only bonus is separate files means you can publish to different domains, which if you can (say having both a .fr and a .de domain), I’m told produces better search engine placement in the long run, than having both languages under the same domain and a /fr/ and /de/ sub-folder.

So the process looks like this:

  • you extract the text from your pages
  • you send them to a translator
  • you duplicate the file
  • you insert the text in the duplicate file, in place of the original
  • you tweak the layout for text that didn’t quite fit

Once you have the text in multiple languages, you should use the cross-linking of pages by adding the languages in the site settings, then for each page that’s available in multiple languages setup the connection between one language and the other via the options mentioned at the bottom of the page settings.

This cross-linking is tedious, but it creates “hreflang” attributes in the pages and in the sitemap, which Google and other search engines then use to direct customers of different languages to the results most relevant to them.

There are some things we can do to streamline this process, we translate large Sparkle documents ourselves (the documentation, and soon the main site as well), so we feel the pain. But this looks like it for now.


Thank you Duncan, I will follow your advice. π


It is a lot of extra work to have two separate sites for two languages. To keep the content in sync. I just put the link of the English page in, choose the language and used the translated link as a button on the English page. You can see this in action here:


Dear Sven, thx for your post! At first it looks great, though I cannot judge the quality of the translation. Usually after Google translate you have to go over the translation thoroughly to make it proper language. But I see the navigation doesn’t work…


I think the easiest way is to duplicate the page when it is finished, then translate it (correctly) and finally add a small flag with a link on the original page and on the copy so that you can switch from one page to another and display the language of your choice.
I mean, for my part, I find it much more effective.


I tried that and it would work for a finished page that never or hardly changes. But for a website that changes a lot, you’ll be maintaining in effect two websites. From experience, that gets very confusing (“which words did I have to update again?”) and a lot of work. So I don’t do that anymore.