Как получить id связаной страницы в Babel?

В MODX с помощью плагина Babel вы можете получить id связанной страницы следующим образом:

1. Установите и активируйте плагин Babel на вашем сайте MODX.

2. Создайте параметр "Связанная страница" для вашей страницы. Параметр "Связанная страница" должен быть типа "checkbox" или "dropdown". Этот параметр будет содержать id страниц, которые вы хотите связать с текущей страницей.

3. В вашем шаблоне или сниппете вы можете использовать следующий код для получения id связанной страницы:

// Получение id текущей страницы
$currentResourceId = $modx->resource->get('id');

// Получение значения параметра "Связанная страница"
$linkedResourceIds = $modx->getOption('linkedResource', null, '', true);

// Преобразование значения параметра в массив
$linkedResourceIdsArray = explode(',', $linkedResourceIds);

// Если массив не пустой
if (!empty($linkedResourceIdsArray)) {
    // Проверка, есть ли текущий ресурс в массиве связанных ресурсов
    if (in_array($currentResourceId, $linkedResourceIdsArray)) {
        // Получение id связанной страницы
        $linkedResourceId = array_search($currentResourceId, $linkedResourceIdsArray);
        
        // Вывод id связанной страницы
        echo $linkedResourceId;
    }
}

Примеры использования:

Если у вас есть только одна связанная страница, вы можете использовать следующий код:

$linkedResourceId = trim($modx->getOption('linkedResource'));

// Вывод id связанной страницы
echo $linkedResourceId;

Если у вас есть несколько связанных страниц, вы можете использовать следующий код:

$linkedResourceIds = $modx->getOption('linkedResource', null, '', true);

if (!empty($linkedResourceIds)) {
    $linkedResourceIdsArray = explode(',', $linkedResourceIds);
    
    foreach ($linkedResourceIdsArray as $linkedResourceId) {
        // Вывод id связанной страницы
        echo $linkedResourceId;
    }
}

Обратите внимание, что вы должны заменить 'linkedResource' на имя своего параметра "Связанная страница".