Как msOptions через запятую?

Добрый день.

Необходимо свойства msOptions показать на странице товара через запятую, как реализовать?

Использую:

[[msOptions? &tpl=`tplOptions` &options=`color`]]
чанк tplOptions
{foreach $options as $name => $values}
    <li><span class="title"><b>{('ms2_product_' ~ $name) | lexicon}</b>:</span><span class="option">{foreach $values as $value}{$value}{/foreach}</span></li>
{/foreach}
Нужно, чтобы цвета шли через запятую, если их больше одного. Если только один цвет, то запятой соответственно нет.

Помогите пожалуйста.
Павел
06 декабря 2023, 07:54
modx.pro
464
0

Комментарии: 2

Володя
06 декабря 2023, 08:58
+1
docs.modx.pro/components/pdotools/parser#vstroennye-modifikatory
join — объединяет элементы массива в строку, используя первый параметр в качестве соединителя (по умолчанию ,).
{if $values is array} 
    {$values | join}
{else}
    {$values}
{/if}
    Павел
    06 декабря 2023, 09:18
    0
    Спасибо, помогло. Конечный вариант, если кому понадобится (добавил пробел после запятой)
    {foreach $options as $name => $values}
        <li><span class="title"><b>{('ms2_product_' ~ $name) | lexicon}</b>:</span><span class="option">{if $values is array}{$values | join : ', '} {else}{$values}{/if}</span></li>
    {/foreach}
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    2