На странице товаров в карточках выводятся не только товары, но и категории (у них другой шаблон). Как можно определить, что именно выводится?

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

Обычно в системе MODX для создания карточек товаров, используется менеджер ресурсов, который предоставляет возможность создавать и управлять различными типами ресурсов, включая категории и товары. Каждый ресурс имеет свою уникальную идентификацию (ID) и тип (например, "категория" или "товар").

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

Для этого вам потребуется получить ID ресурса текущей карточки. Это можно сделать с помощью сниппета getResources или pdoResources, с помощью которых можно получить список дочерних ресурсов определенного родителя или список ресурсов по их типу.

После получения ID ресурса текущей карточки, вам нужно получить информацию о типе ресурса. Для этого вы можете использовать функцию getTemplateVarOutput для получения значения шаблона переменной типа указанного ресурса. Например, если вы используете шаблон переменной с именем "Тип" для определения типа ресурса, вы можете использовать следующий код для получения значения типа:

$resourceId = $modx->resource->id; // ID текущего ресурса
$templateVarName = 'Type'; // название шаблона переменной
$templateVarOutput = $modx->getTemplateVarOutput($templateVarName, $resourceId);
$type = $templateVarOutput['value']; // значение типа

После этого, вам останется только проверить значение переменной $type и выполнить соответствующие действия в зависимости от типа ресурса. Например, если $type равен "категория", вы можете применить шаблон для категории, а если $type равен "товар", то применить шаблон для товара.

Таким образом, определить, что именно выводится на странице товаров в карточках можно, используя тип ресурса и соответствующие шаблоны переменных. Это позволит вам контролировать отображение информации в карточках и выполнить необходимые действия в зависимости от типа содержимого.