Как вывести кол-во страниц по шаблону или есть другие варианты?

Существует несколько способов вывести количество страниц, соответствующих определенному шаблону в MODX. Рассмотрим несколько из них:

  1. Используя счетчик в цикле getResources:
[[!getResources?
    &tpl=`@INLINE [[+total]]`
    &limit=`0`
    &tplCount=`@INLINE [[+total]]`
    &where=`{"template:IN": "шаблон"}`
    &totalVar=`total`
]]

В этом примере мы используем параметр tplCount, который указывает MODX, что нам нужно только количество страниц, а не их вывод. Результат сохраняется в переменную total, которую можно использовать дальше в шаблоне.

  1. Используя сниппет pdoResources:
[[!pdoResources?
    &tpl=`@INLINE [[+total]]`
    &limit=`0`
    &tplCount=`@INLINE [[+total]]`
    &where=`{"template:IN": "шаблон"}`
    &totalVar=`total`
]]

Сниппет pdoResources работает аналогично getResources, но имеет более широкий функционал для работы с базой данных.

  1. Используя API MODX:
$templateId = 1; // ID шаблона
$count = $modx->getCount('modResource', array('template' => $templateId));

Этот вариант подходит, если вы работаете с кодом MODX из PHP.

Каждый из этих подходов имеет свои преимущества и подходит для разных ситуаций. Выберите тот, который лучше всего соответствует вашим требованиям и ситуации.