В листе товаров свойство чекбокс выводится только по умолчанию. Как вывести значение товара в листе товаров?

В MODX существует несколько способов вывода значений товара в листе товаров, в зависимости от того, какая используется система управления контентом (CMS) и как настроена конкретная установка сайта. Однако, я предположу, что вы используете MODX Revolution и шаблон BTemplates, поскольку эти возможности наиболее распространены.

1. Использование TV - это наиболее распространенный и простой способ. В первую очередь необходимо создать TV (User-Defined Template Variable) для поля, которое вы хотите отобразить, как чекбокс, в каждом товаре. Затем убедитесь, что в настройках настройки этого поля указан тип "да/нет" или "чекбокс". Когда TV настроено, вы можете использовать его в шаблонах товаров и отображать его значение. Например, для создания списка товаров, используя шаблон BTemplates:

   [[!getResources?
      &parents=`ID_родительской_категории`
      &tpl=`bt_template`
   ]]

В файле шаблона (bt_template) вы можете использовать такой код:

   <h3>[[+pagetitle]]</h3>
   <p>[[+content]]</p>
   <p>В наличии: [[+tv.ваше_поле]]</p>

Где [[+tv.ваше_поле]] - это ваше поле TV.

2. Использование сниппетов или плагинов - в MODX существует множество сниппетов или плагинов, которые могут помочь вам вывести значения товаров в листе товаров. Некоторые из них могут быть установлены из репозитория MODX, а другие - созданы специально для вашего сайта. Например, существуют сниппеты, такие как pdoResources и getResources, которые предоставляют более гибкие возможности для запроса и отображения данных товаров, включая значения TV.

3. Использование API MODX - если вам требуется более сложная логика или доступ к данным товаров из вашего собственного кода, вы можете использовать API MODX для получения значений товаров. Например, вы можете использовать функцию $modx->getObject для получения объекта товара и затем получить значения TV или других полей данного объекта для отображения на странице листа товаров.

   <?php
   $resource = $modx->getObject('modResource', ['id' => $resourceId]);
   $tvValue = $resource->getTVValue('ваше_поле');
   echo $tvValue;
   ?>

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