Air conditioning||Automatic irrigation||BBQ...
This question has been answered by bertoost. See the first response.

[[%yournamespace.[[*yourTvValueAsLexiconKey]]? &namespace=`` &topic=`yourTopic` &cultureKey=`[[++cultureKey]]`]]
[ed. note: solidusite last edited this post 12 years, 11 months ago.]
<?php $_lang['site.your_lexicon_key'] = "Your lexicon value";
<?php
if($modx->context->get('key') == 'mgr' || $modx->event->name != 'OnHandleRequest') { return ''; }
$modx->lexicon->load('site:default');Does this work in the backend?? I guess the [[% ... ]] solutions only work on the frontend. When I'm wrong;
I suggest to use a input value like;
Air conditioning==airco||Automatic irrigation==autoirri||BBQ==bbq ....
Or something.. This will make the actual value "airco" or "autoirri" or anything else, and will make your front-end loading of translations much easier. Just create lexicon entries with the right namespace and key and put your TVs' value in it as described before.
What I always do in multi-language cases;
1. create namespace "site", with core path "{core_path}components/site/"
2. create folders/file structure like: core/components/site/lexicon/en/default.inc.php
3. put this content in the PHP file;
<!--?php $_lang['site.your_lexicon_key'] = "Your lexicon value";
// and duplicate, rename key for more keys
4. Make it load automatically on all frontend pages with a "OnHandleRequest" plugin like this;
<?php if($modx--->context->get('key') == 'mgr' || $modx->event->name != 'OnHandleRequest') { return ''; } $modx->lexicon->load('site:default');
5. Now you can simply use [[%site.your_lexicon_key]] without those parameters.
Because you're using Babel, I guess it's unnecessary to say that you should set "cultureKey" to every context.
Hope this helps.