Как узнать id ресурса, зная его tv Новый


Здравствуйте! Мне необходимо узнать id ресурса, зная значения двух его tv. Пробую делать так
$query= $modx->newQuery('modTemplateVarResource', array(
    array(
        'value' => $code
    ),
    array(
        'AND:value:=' => 1
    )
));
$orders = $modx->getCollection('modTemplateVarResource',$query);
foreach ($orders as $order)
{
   echo $order->contentid."_";
}
Но ничего не выходит. То есть когда мы выбираем по одному значению (там переменная), то все ок. Но с двумя как-то непонятно. Делала как в документации rtfm.modx.com/xpdo/2.x/class-reference/xpdoquery/xpdoquery.where
Либо здесь нельзя AND применять…
Может проще можно сделать как-то
06 октября 2016, 18:14    Аля   
0    270 0

Комментарии (3)

  1. Наумов Алексей 06 октября 2016, 20:26 # 0
    Попробуйте так, а то что-то много массивов…
    $query= $modx->newQuery('modTemplateVarResource', array(
            'value' => $code,
            'AND:value:=' => 1
        ));
    
    
    и, наверное,

    echo $order->get("contentid");
    1. Аля 07 октября 2016, 10:42 # 0
      Да, так тоже пробовала, не работает. Причем не работает именно с AND, может что-то с логикой не то. Решила схитрить, делаю так
      $resurses = $modx->runSnippet('pdoResources',array(
         'parents' => 37,
         'tvFilters' => 'status==1,code==GOOGLE02'
      ));
      echo $resurses;
      
      То есть с помощью pdoResources. Но тут тоже вопрос, можно ли подставить переменную в tvFilters, то есть мне нужно code=='переменная'
      И другой вопрос, выводится массив, а мне нужено только id в переменную записать
    2. Аля 07 октября 2016, 12:31 # 0
      Получила в итоге свой id шник
      $resurses = $modx->runSnippet('pdoResources',array(
         'parents' => 37,
         'tvFilters' => 'status==1,code=='."$code",
         'tpl' => '@INLINE [[+id]]'
      
      ));
      echo $resurses;
      
      Вы должны авторизоваться, чтобы оставлять комментарии.