You can modify the Plugin the way you would like to have it.
In my case I had already build the NL website and on a later point added the EN language.
Didn't wanted to change the default NL language chunks etc. so this way I only had to add the EN version.
So "nl" would be empty and all pages which are in /en/ [+mylang+] would output "_en".
<html lang="[[if? &is=`[+mylang+]:isempty` &then=`nl` &else=`en`]]">
It would also be possible to just let it output "nl" or "en" like below.
if(strstr($_SERVER['REQUEST_URI'], "/en/")) {
$modx->setPlaceholder('mylang',"en");
}
else {
$modx->setPlaceholder('mylang',"nl");
}
If you use a plugin like MultiTV you can use it like this:
[!multiTV?
&tvName=`product`
&rowTpl=`product-tpl[+mylang+]`
The chunks would be "product-tpl" and "product-tpl_en".
Or if you use the other version the chunks would be "product-tpl-nl" and "product-tpl-en" if you use: "&rowTpl=product-tpl-[+mylang+]
".
In the past I have used YAMS which works pretty nice too but is a bit harder to setup and abandoned.
"bLang" would also be an option but I haven't tried that one yet.