<![CDATA[ Доработка фильтрации в категории с учетом элементов подкатегорий - My Forums]]> https://forums.modx.com/thread/?thread=104805 <![CDATA[Доработка фильтрации в категории с учетом элементов подкатегорий]]> https://forums.modx.com/thread/104805/#dis-post-563608
Просьба подсказать как корректно внести правки.

Есть код, он корректно работает, если в категории только элементы, без вложенных подкатегорий с элементами:
<?php
$c = $modx->newQuery('modResource');
$c->where(array(
    'hidemenu'=>0,
    'published'=>1,
    'deleted'=>0,
    'parent' => 16
));
//$c->stmt->execute();
$c->select('id,pagetitle,longtitle');
$c->prepare();
$c->stmt->execute();
$res = $c->stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($res as $v) {
    $q = $modx->newQuery('modTemplateVarResource');
    $q->leftJoin('modResource', 'Resource', array(
        'Resource.id = modTemplateVarResource.contentid',
        'modTemplateVarResource.tmplvarid' => 11,
        'modTemplateVarResource.value' => $v["id"]
        
    ));
    $q->where(array(
        'Resource.hidemenu'=>0,
        'Resource.published'=>1,
        'Resource.deleted'=>0,
        'Resource.parent' => $parent,
    ));
    $q->prepare();
    $sql = $q->toSQL();
    //echo "*".$sql."*";
    $count=$modx->getCount('modTemplateVarResource', $q);
}


Мы добавили подкатегории с новыми элементами и фильтрация не учитывает новые элементы из подкатегорий. Что нужно добавить, чтобы фильтрация работала на элементы подкатегорий?

По видимому нужно в parent передавать массив со всеми id категорий, которые нужны, можно ли так делать?]]>
greengride Jan 16, 2019, 08:50 AM https://forums.modx.com/thread/104805/#dis-post-563608
<![CDATA[Re: Доработка фильтрации в категории с учетом элементов подкатегорий]]> https://forums.modx.com/thread/104805/#dis-post-563683 2. Используйте xPDO::getCollection, не надо все усложнять.]]> argonaut2k Jan 20, 2019, 05:17 PM https://forums.modx.com/thread/104805/#dis-post-563683