Спасибо всем, кто откликнулся. Я наконец-то нашел решение. Не уверен, что самое изящное, но оно работает.
Значит так:
1. Создаем новый плагин, например "myRealPageID" и привязываем его к событию "OnWebPageInit".
2. В плагин помещаем такой код:
$_GET[’myRealID’] = $modx->documentIdentifier;
да-да, всего одна строка
Кстати, именно и только в этом событии $modx->documentIdentifier равен реальному ID страницы, а на последующих этапах обработки ID становится равно идентификатору страницы <Страница "Доступ запрещен">. Я помещаю ID в массив GET. Не уверен, что это самое изящное решение, но не придумал ничего лучше, чтобы передать это значение дальше по обработчикам. Ладно, проехали...
3. Создаем TV, например, "myRealID". В значение по умолчанию прописываем:
@EVAL return $_GET[’myRealID’];
4. Вуаля, теперь в любом месте шаблона имеем доступ к реальному ID страницы через обращение
[*myRealID*]
Еще раз спасибо всем, кто откликнулся.