Как получить значение TV поля через снипет?

Для того чтобы получить значение TV (Template Variable) поля через сниппет в MODX, вам потребуется использовать несколько функций.

Первым делом, вам необходимо получить объект текущего ресурса. Для этого вы можете использовать функцию modx->resource или modx->getObject('modResource'). Например:

$resource = $modx->resource; // или использовать $modx->getObject('modResource')

Затем, вы можете получить доступ к TV полям этого ресурса через объект resource:

$tvName = 'your_tv_name'; // замените на имя вашего TV поля
$tvValue = $resource->getTVValue($tvName);

// Если TV поле имеет тип "Да/Нет", то для получения его значения используйте:
$tvValue = $resource->getTVValue($tvName, $resource->context_key);

Теперь в переменной $tvValue у вас содержится значение TV поля.

Если вам нужно получить значение TV поля для другого ресурса, не являющегося текущим, тогда вам потребуется использовать функцию modx->getObject('modResource', $resourceId):

$resourceId = 123; // замените на ID нужного вам ресурса
$resource = $modx->getObject('modResource', $resourceId);
if ($resource) {
    $tvValue = $resource->getTVValue($tvName);
    // или для полей типа "Да/Нет":
    $tvValue = $resource->getTVValue($tvName, $resource->context_key);
} else {
    // ресурс с указанным ID не найден
}

Надеюсь, эта информация поможет вам получить значение TV поля через сниппет в MODX.