В компоненте Tickets "из коробки" нет сниппета для подсчета комментариев. Исправляем данную неприятность путем написания собственного сниппета (`ticketsCommentsCount`)
Суть сниппета: произвести запрос к базе данных и подсчитать количество строк в результате работы запроса:
<?php
$q = $modx->newQuery('modResource', $id);
$q->leftJoin('TicketThread','TicketThread', "`TicketThread`.`name` = 'resource-{$id}'");
$q->leftJoin('TicketComment','TicketComment', "`TicketThread`.`id` = `TicketComment`.`thread`");
$q->where(array(
'TicketComment.published' => 1
));
$q->select('COUNT(`TicketComment`.`id`) as `comments`');
$count = 0;
if ($q->prepare() && $q->stmt->execute()) {
$count = (integer) $q->stmt->fetch(PDO::FETCH_COLUMN);
}
return $count;
Вызов сниппета на странице/в шаблоне/в чанке:
[[!ticketsCommentsCount:default=`0`?
&id=`[[+id]]`
]]
В параметр ID передать идентификатор ресурса, для которого нужно посчитать количество комеентариев.