Для проверки значения radio в TV (Template Variable) в ModX, вам нужно выполнить несколько шагов.
1. Получите объект TV, используя его идентификатор (TV ID) или название (TV name):
$tvId = 1; // ID вашего TV $tvName = 'myTV'; // Имя вашего TV $tv = $modx->getObject('modTemplateVar', array('id' => $tvId)); // по ID $tv = $modx->getObject('modTemplateVar', array('name' => $tvName)); // по имени
2. Получите все доступные значения radio для этого TV:
$tvValues = $tv->get('elements');
3. Проверьте, соответствует ли текущее значение TV одному из доступных значений radio:
$tvValue = $resource->getTVValue($tvName); // Получаем значение TV для текущего ресурса if (in_array($tvValue, $tvValues)) { // Значение TV соответствует одному из доступных значений // Ваш код } else { // Значение TV не соответствует ни одному из доступных значений // Ваш код }
4. Вы можете также использовать метод getOption
объекта TV для получения объекта modTemplateVarTemplate
, представляющего отдельную опцию:
$optionValue = 'myOption'; // Значение опции $option = $tv->getOption($optionValue); if ($option) { // Опция найдена // Ваш код } else { // Опция не найдена // Ваш код }
Обратите внимание, что в коде выше предполагается, что у вас есть экземпляр объекта ModX ($modx
) и ссылка на текущий ресурс ($resource
), в котором находится TV. Код также предполагает, что вам известны ID TV или его имя, а также доступные значения radio для этого TV.