array(
'parents' => $parents,
'depth' => $depth,
'totalVar' => 'count',
'where' => $where
);
$modx -> runSnippet('pdoResources', $pars);
return '[[+count]]';
[[!countProducts? &parents=`[[+id]]` &depth=`15` &where=`{"template:=":4}`]]
Но не работает
<?php $count = 0; $parent = isset($parent) ? (integer) $parent : 0; // Define Parents $q = $modx->newQuery('modResource'); $q->where(array( 'class_key' => 'msCategory' // Только категории Minishop )); $q->select(array( 'id', 'parent' )); $q->prepare(); $q->stmt->execute(); $res = $q->stmt->fetchAll(PDO::FETCH_ASSOC); $parent_ids = array($parent); $i = 0; while(true){ $i++; $action = false; foreach($res as $v){ if(in_array($v['parent'], $parent_ids) AND !in_array($v['id'], $parent_ids)){ $parent_ids[] = $v['id']; $action = true; } } if(!$action || $i > count($res)){ break; } } //return $i; if ($parent > 0) { $q = $modx->newQuery('modResource'); $q->where(array( 'parent:IN' => $parent_ids, 'published' => 1 )); $q->select(array( 'id' )); $q->prepare(); $q->stmt->execute(); $count = count($q->stmt->fetchAll(PDO::FETCH_ASSOC)); } return (string) $count;
чего выдумвать? https://docs.modx.pro/en/components/pdotools/snippets/pdoresources#Result-Properties setTotal totalVar
там по дизайну не в категории просто нужно вивести а на другой странице
а такой вариант разве не быстрее?
Обсуждают сегодня