Kosatchev

Kosatchev

С нами с 14 декабря 2017; Место в рейтинге пользователей: #845
Kosatchev
05 марта 2019, 13:53
0
C выборкой, я неверно выразился. нужно выбрать по двум TV одновременно
Kosatchev
03 марта 2019, 23:38
0
Модифицировал указанный сниппет, но он не сортирует по двум TV
<?php
$where = $modx->newQuery('modResource');
$where->leftJoin('modTemplateVarResource', 'TemplateVarResources');
$where->leftJoin('modTemplateVar', 'tv', "tv.id=TemplateVarResources.tmplvarid");
$where->where(array(
    array(
        'tv.name'   => 'type', // Имя TV1
        'TemplateVarResources.value'    => 'продам',// Значение TV1
    )
));
$where->where(array(
    array(
        'tv.name'   => 'category', // Имя TV2
        'TemplateVarResources.value'    => 'магнитофон',// Значение TV2
    )
));
$resources = $modx->getCollection('modResource',$where);
foreach ($resources as $id => $res) {
  $output .= '
['.$id.'] => '.$res->get('pagetitle').'
';
}
return $output;
Так же, пробовал составить where-запрос иначе:
$where->where(array(
    array(
        'tv.name:='   => 'type', // Имя TV1
        'TemplateVarResources.value:='    => 'продам',// Значение TV1
        'AND:tv.name:='   => 'category', // Имя TV2
        'TemplateVarResources.value:='    => 'магнитофон',// Значение TV2
    )
));
Тоже не дает ожидаемого результата.
Kosatchev
14 декабря 2017, 12:54
0
Благодарю, это именно то, что я пытался сделать!