We cater to specific groups of members who are interested in content from one, two or more languages, but are likely not interested in content in other languages. For example: if a forum has both English and Chinese nodes, then likely the English member will not want to see Chinese threads/content.
I suggest this:
Allow admin to add additional languages in admincp. The main language will stay the same.
Let's say for example that the main language is set to English.
If the admin adds Spanish and French as additional languages, then this would create new routes according to country codes:
Add a setting to node settings to select the node language.
A node with French language setting will have this format:
domain.com/community/nodename.1 would 301 redirect to the above url.
Add a switch/setting for members to select in which language(s) they want to see content. i.e.:
- Global (all languages)
Or whatever languages the admin has added.
I believe that with this relatively simple approach XenForo would resolve a major problem.
I borrowed this approach from Reddit btw.