I'm thinking of a website which is basically the following:
- users can push some pins on a map with some text and additional information regarding the location they are pinning
- other users can see those locations and read the text and the additional information
- maybe some search and list pages
- I suppose my audience is going to come from all over the world, speaking different languages
Now I have a big trouble with i18n
(internationalization), mostly because of SEO:
- I would like to offer the user-interface (UI) in English and some other languages for the users based on accept-language parsing, GeoIP, etc...or user's choice
- I would like the pins to have a permalink, so that users can find them in search engines
- I don't want to translate the text which comes from the user, just the UI
- I don't want to hide content from users which were written in a different language, since there are other things which make that content valuable without understanding all the text
My question is: what are the best options for my users and for Google. The options I think I have:
- Detect user location or accept-language, or use a user preference (e.g., cookie, URL path, or query string), and render the whole page in that language, except the content I cannot translate (user generated content)
- Always render the page with the English UI, and with JavaScript translate it to the language of the user
- I could use locales as subdomains (e.g.,
en.example.com
,de.xample.com
, etc...) - but what do I do withwww.example.com
?
I think in both cases I might have some trouble with search engines. Do you maybe have some clever idea how to solve this problem?