Выбрать определенный TV у ресурса

Нужно выбрать значения TV параметра у ресурса и его дочерних ресурсов. Дело в том что они могут повторятся и нужно их сгруппировать. Подскажите как это сделать, заранее благодарю за ответы
Более понятно: — есть каталог с категориями и товарами у товаров есть различные производители, записаны они в TV
В каждой категории нужно вывести список производителей но не весь, а только тех товаров которые есть в категории и еще их нужно сгруппировать, чтоб они не повторялись
Вася
19 августа 2013, 14:38
modx.pro
1 083
0
Поблагодарить автора Отправить деньги

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

Василий Наумкин
19 августа 2013, 19:15
0
Вы еще храните производителей в ТВ параметрах? Тогда мы идём к вам!

А если серьезно, попробуй вот поизучать материал, только его нужно переделать на работу с ТВ.

Там и выбор производителей есть, можно дополнительно фильтровать по категориям, если получить сначала их ids через $modx->getChildIds();

В общем, нужно писать свою выборку.
    Вася
    20 августа 2013, 00:09
    0
    Благодарю.
    Если кому то понадобится, то примерно так

    $parent = $modx->resource->get('id');
    $childs = $modx->getChildIds($parent);
    $q = $modx->newQuery('modResource');
    
    $q->innerJoin('modTemplateVarResource','mTV','mTV.contentid = modResource.id');
    $q->where(array('id:IN' => $childs,'mTV.tmplvarid'=>22));
    $q->groupby('mTV.value');
    $q->limit(1000);
    
    $res = $modx->getCollection('modResource', $q);
    foreach ($res as $v) {
            echo $v->getTVValue('manufacturer').'
    ';
    }
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    2