Modx проверить TV на пустоту

Внимание, этот компонент требует версию PHP 5.5 или выше! Если ваш сайт использует PHP ниже требуемого, установка этого дополнения может его сломать.

Вывод списка определенных ресурсов в TV-поле MODX Revolution

Иногда при создании каталога на MODX требуется сделать возможность выводить один и тот же ресурс в разных категориях. Сделать это совсем не сложно, т.к. мы знаем, что MODX это очень гибкая система. Расскажу как это сделать на MODX Revolution, но в Evo этот принцип тоже применим.

Создаём дополнительное поле (TV).

Тип ввода: Флажки(checkbox) или Список (множественный выбор)

В поле «Возможные значения» вводим такой код:

Тут мы используем сниппет getResources чтобы получить список названий и ID категорий. В данном случае ID каталога (документа, в который вложены категории) — 10, уровень вложености — 3.

Присваиваем это дополнительное поле шаблону ресурса.

Теперь для ресурса мы можем выбрать дополнительные категории.

MODX. Как реализовать текстовые блоки на TV и MIGX. Сравнение.

Осталось вывести ресурсы из этих категорий. Для этого нам понадобится всё тот же getResources (+ getPage) и дополнительный небольшой сниппет.

Я назвал этот сниппет getIDLikeByTV. Вот его код:

/*[ [getIDLikeByTV?tmplvarid=`6`
if(!isset($like)) $like = »;
$ids_arr = array();
$query = $modx->newQuery(‘modTemplateVarResource’);
$query->select($modx->getSelectColumns(‘modTemplateVarResource’,’modTemplateVarResource’,»,array(‘id’,’contentid’
)));
$query->where(array(
‘tmplvarid’ => intval($tmplvarid),
‘value:LIKE’ => ‘%’.$like.’%’
));
$query->sortby(‘contentid’,’ASC’);
$results = $modx->getCollection(‘modTemplateVarResource’,$query);
if($results) <
foreach ($results as $result) <
array_push($ids_arr,$result->get(‘contentid’));
>
>
return implode(‘,’,$ids_arr);

Сниппет ищет подстроку (параметр tmplvarid). Теперь выводим ресурсы:

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

Еще по теме:  Ntfs или exfat для Андроид ТВ

Источник: about-cms.com

Что такое переменные шаблона

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

Использование переменных в шаблонах MODX

Переменные в MODX определяются с помощью тега [[*variable]]. Этот тег сообщает системе заменить тег значением переменной. Например, если вы хотите отобразить название продукта на веб-странице, вы можете использовать следующий код:

MODX tv (дополнительные поля / переменные)


[[*product_name]]

В этом примере «product_name» — это имя переменной. MODX заменит тег значением переменной «product_name».

Установка значений переменных

Переменные в MODX могут быть установлены несколькими способами. Один из способов — установить значение переменной в самом коде шаблона. Например, вы могли бы установить значение переменной «product_name» следующим образом:

[[!SetVar? value=`My Product`]]

Этот код использует фрагмент SetVar, чтобы установить значение переменной «product_name» равным «My product». Параметр «value» задает значение переменной.

Другой способ установки переменных

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

[[!MySnippet? product_id» передается со значением «123». Затем фрагмент может использовать это значение для извлечения информации о продукте из базы данных.

Работа с несколькими переменными

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

    [[!pdoResources? tpl=`product_item` ]]
Еще по теме:  Отзывы о TV Apple TV

В этом примере фрагмент pdoResources извлекает список продуктов из базы данных. Параметр «https://codelab.pro/raboty-s-peremennymi-shablona-tv-v-modx/» target=»_blank»]codelab.pro[/mask_link]

Оцените статью
Добавить комментарий