🙈 PG
ладно, если долго мучаться, что нибудь получится 😊
а какая в целом задача? нужно из мультиселекта выводить значения с переводом?
Sentinel
ага
🙈 PG
а без перевода где-то нужно выводить?
Баха Волков
Я знаю к чему ты клонишь))
🙈 PG
Sentinel
Без перевода выводится в контексте web, с переводом в eng
🙈 PG
понял, пару мин, что-то придумаю
Баха Волков
Добавятся языки и горя хапнешь
Sentinel
там все остальное лексиконами сделано
Баха Волков
В селект значения откуда приходят?
Sentinel
а именно это тв надо сделать на фронте.. т.к. много ресурсов
Sentinel
tv http://picplus.ru/img/1812/21/5f0f7741.png
Баха Волков
tv http://picplus.ru/img/1812/21/5f0f7741.png
Я вроде знаю почему не получилось у тебя
Баха Волков
у тебя же пробелы там
Sentinel
в самих Возможных значениях ты имеешь в виду?
Баха Волков
Не утверждаю, но по моему: {'Железо' != ' Железо '}
Баха Волков
Баха Волков
php тоже так думает😁
Да я хз, ща ляпну и кто нибудь набросится, типа чё ты фронтендер к нам на сервак лезешь😄
Alexey
Пока не открыто и не налито - не возбуждает
Баха Волков
tv http://picplus.ru/img/1812/21/5f0f7741.png
Тебе нужно: Создать лексиконы (site_type_ключ) В возможных значениях TV указать в качестве значений (не caption, а именно value) эти ключи И уже выводить {foreach $arrayTypes as $type} {('site_type_' ~ $type) | lexicon} {/foreach}
Sentinel
там уже стоят значения просто и их нужно перевести на front
Баха Волков
там уже стоят значения просто и их нужно перевести на front
{set $translations = [ ' Железнодорожные перевозки '=>'Rail transportation', ' Пупок '=>'Pupok', ' Чрево '=>'Chrevo', ]} {foreach $typesArray as $type} {$translations[$type]} {/foreach}
Баха Волков
Тогда уж так
Баха Волков
Но это пипец
Sentinel
так не работает, если несколько 😒
Sentinel
выводит, только если одно есть значение
Баха Волков
А если так? {foreach $typesArray as $type} {$type} {/foreach}
Баха Волков
Просто
Баха Волков
Весь код сейчас покажи
Баха Волков
У тебя где-то мелочь
Sentinel
{set $typesS = '!pdoField' | snippet : [ 'id' => $id, 'field' => 'types', 'includeTVs' => 'types' ]} {var $typesArray = $typesS|split:'||'} {foreach $typesArray as $type} {$type} {/foreach} так выводит http://picplus.ru/img/1812/21/085c312e.png
Баха Волков
{set $translations = [ 'Железнодорожные перевозки'=>'Rail transportation', 'Пупок'=>'Pupok', 'Чрево'=>'Chrevo', ]} {foreach $typesArray as $type} {$translations[($type | strip)]} {/foreach}
Баха Волков
Странный вопрос, ты пупок и чрево меняешь на свои значения?)
Sentinel
😊 конечно
Баха Волков
{set $translations = [ 'Железнодорожные перевозки'=>'Rail transportation', 'Пупок'=>'Pupok', 'Чрево'=>'Chrevo', ]} {foreach $typesArray as $type} {$translations[($type | strip)]}{!$type@last ? ',' : ''} {/foreach}
Баха Волков
Да должно работать
Sentinel
Баха Волков
О! Супер, завелось
На всякий, можешь вторым параметром strip передать true
Sentinel
эт. чё все таки в пробелах дело было?
Sentinel
Sentinel
Да
Спасибо
Баха Волков
Спасибо
Пожалуйста)
YS
Баха Волков
https://github.com/modxcms/revolution/pull/14133 Иван удалил конвертацию тегов evo из парсера, наверняка скорость увеличится
🙈 PG
ну а если продумать на будущее, тогда лучше сделать так: создать сниппет "fld" $inputs = explode('==',$input); $tempVar = $modx->getObject('modTemplateVar',1); $list = explode('||', $tempVar->get('elements')); $out =[]; foreach($list as $item){ $tmp = explode('==',$item); switch($modx->context->key){ case 'web': foreach($inputs as $item){ $out[] = trim($tmp[1]); } break; case 'eng': foreach($inputs as $item){ $out[] = trim($tmp[0]); } break; } } return $out; ну и на нужной странице вызывать {set $list = 'fld' | snippet : ['input'=>$_modx->resource.tvName]} {foreach $list as $item} <span class="someClass">{$item}</span> {/foreach}
🙈 PG
это позволит позже добавлять в настройках ТВ дополнительные значения
🙈 PG
🙈 PG
ну и заполнять соответственно в одно месте на англ и рус языках
Sentinel
Ну прям решение для будущего компонента по мультиязычности можно сказать 👍😉
🙈 PG
стоп, там есть трабла
Sentinel
ну да ... 😊
Баха Волков
🙈 PG
неа, сейчас переделаю
Баха Волков
стоп, там есть трабла
Сниппету уж лучше передать название
Sentinel
стоп, там есть трабла
пробееелыыыы... 😀
🙈 PG
нет
Баха Волков
или id
Баха Волков
пробееелыыыы... 😀
Они не причём)
Иван
придется самому капаться
https://foxtan.ru/poleznyie-stat/kak-skopirovat-lending/
Иван
Хороший выбор
🙈 PG
$inputs = explode('||',$input); $tempVar = $modx->getObject('modTemplateVar',1); $list = explode('||', $tempVar->get('elements')); $out =[]; $values =[]; foreach($list as $item){ $tmp = explode('==',$item); switch($modx->context->key){ case 'web': $values[trim($tmp[1])] = trim($tmp[1]); break; case 'eng': $values[trim($tmp[1])] = trim($tmp[0]); break; } } foreach($inputs as $k){ $out[] = $values[trim($k)]; } return $out;
🙈 PG
вот теперь точно будет как надо работать
🙈 PG
тут нужно изменить 1 на id ТВ $tempVar = $modx->getObject('modTemplateVar',1);
Anton
А можно ли как-то в модх перегенерировать алиасы для документов, но чтоб был редирект со старых алиасов? Если нет какого-то родного решения, то как это вообще делается примерно?
Павел
Ребят, в 2.7.0 не видел никто ошибку Smarty?
Павел
Fatal error: Uncaught --> Smarty Compiler: Syntax error in template "{/foreach}" unclosed {foreach} tag <-- thrown in
🙈 PG
ну а вообще у меня бывало что я сначала закрывал, а в конце открывал типа {/foreach $list as $item} <span class="someClass">{$item}</span> {foreach}