Вывод значений tvSuperSelect текущего документа
Реализовываю каталог продукции опциями (тегами) с помощью tvSuperSelect.
Подскажите, как вывести в карточке товара заполненные значения для тв-полей (как обычные tv выводятся в виде [[*tv_name]]).
Т.е. без фильтрации и прочего — просто в строку перечень заданных у товара тегов.
Подскажите, как вывести в карточке товара заполненные значения для тв-полей (как обычные tv выводятся в виде [[*tv_name]]).
Т.е. без фильтрации и прочего — просто в строку перечень заданных у товара тегов.
Комментарии: 11
Что выводится через [[$tv_name]]?
вы имеете ввиду через [[*tv_name]]? на некоторых товарах ["\u041b\u0414\u0421\u041f"] (JSON)
Fenom не используется на сайте, верно? С ним эту строчку легко можно в нормальный вид превратить.
В шаблонах — нет.
с Fenom какие есть варианты?
с Fenom какие есть варианты?
с Fenom например, так:
Вывести через запятую:
Вывести через запятую:
{set $tv_name = ''|resource:'tv.tv_name' | fromJSON}
{$tv_name | join : ', '}
Дополнительное оформление строки: {set $tv_name = ''|resource:'tv.tv_name' | fromJSON}
<ul>
{foreach $tv_name as $tv}
<li>{$tv}</li>
{/foreach}
</ul>
Либо сниппетом или модификатором также обработать
Fenom не подключен к этому проекту, думаю как еще можно реализовать(
Создаешь сниппет, с таким кодом:
<?php
$id = $modx->resource->id;
$query = $modx->newQuery('modTemplateVarResource', array(
'tmplvarid' => 3, // ID TV поля
'contentid' => $id,
));
$query->select('value');
$tv_value = $modx->getValue($query->prepare());
$tv = $modx->fromJSON($tv_value);
return implode($tv, ', ');
И вызываешь в нужном месте.
Огромное спасибо, все получилось.
пожалуйста)
А можно еще сделать так, чтобы $tv_value были кликабельными ссылками?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.