Можно ли вывести поля migx дочерних элементов родительским?

В MODX возможно вывести поля MIGX дочерних элементов для родительского элемента. Для этого нужно выполнить несколько шагов:

1. Убедитесь, что у вас установлен и активирован пакет MIGX. Вы можете установить пакет MIGX через MODX Package Manager (Менеджер пакетов) или скачать его с официального сайта MODX.
2. Создайте новую TV (пользовательское поле) для вашего родительского ресурса или отредактируйте существующую TV. Установите тип поля в "MIGX" и настройте нужные поля и колонки в JSON-формате. Укажите [[++templateVariableName]] в поле где должно отображаться содержимое дочерних ресурсов.
3. Создайте новое событие в модуле сниппета MODX, которое будет заполнять вашу TV значениями из дочерних ресурсов. Ниже пример кода, который можно использовать в сниппете MODX:

<?php
$parentID = $modx->resource->get('id'); // ID родительского ресурса
$children = $modx->getCollection('modResource', ['parent' => $parentID]); // получить все дочерние ресурсы

$items = [];
foreach ($children as $child) {
    $item = [
        'field1' => $child->getTVValue('tv1'), // значение поля tv1 дочернего ресурса
        'field2' => $child->getTVValue('tv2'), // значение поля tv2 дочернего ресурса
        // Добавьте остальные поля дочернего ресурса, которые вы хотите отобразить в родительском ресурсе
    ];
    $items[] = $item;
}

$output = json_encode($items);
$modx->resource->setTVValue('migxTV', $output); // замените 'migxTV' на имя вашей TV
$modx->resource->save();

return '';
?>

4. Создайте событие "OnBeforeSave" в плагине MODX. Укажите имя события, вызовите сниппет, который вы создали в предыдущем шаге, и укажите приоритет выполнения. Например:

- Имя события: "UpdateParentResourceTV"
- Сниппет: "updateParentResourceTV"
- Приоритет: 0 - это гарантирует, что событие будет выполнено перед сохранением ресурса

5. Создайте шаблон для вашего родительского ресурса и добавьте в него вызов вашей TV. Например:

[[*migxTV]]

Теперь, при каждом сохранении родительского ресурса, событие "OnBeforeSave" будет запускаться, и все дочерние элементы будут обновлять поля MIGX родительского элемента. После этого вы можете вывести значения этих полей в указанном шаблоне ресурса.

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