Для этого создаем чанк --- siteMap --- с кодом:
Код: Выделить всё
[[!pdoMenu?
&startId=`0`
&level=`0`
&resources=`-3,-206,-207,-209,-210,-211`
&showHidden=`1`
&countChildren=`1`
&tplOuter=`@INLINE<ul>[[+wrapper]]</ul>`
&tpl=`@INLINE<li><a href="[[+link]]">[[+menutitle]]</a></li>`
&tplParentRow=`@INLINE<li><a href="/[[+link]]">[[+menutitle]] ([[+children]])</a><ul>[[+wrapper]]</ul></li>`
&tplInner=`@INLINE[[+wrapper]]`
]]
- &resources=`-3,-206,-207,-209,-210,-211` - номера страниц, которые нужно исключить
- &tplParentRow=`@INLINE<li><a href="/[[+link]]">[[+menutitle]] ([[+children]])</a><ul>[[+wrapper]]</ul></li>` - строка выводит родителя в списке. Обратите внимание на <a href="/[[+link]]"> - если не поставить слэш, то будет выводиться пустое значение, которое будет показывать 404 ошибку для данной ссылки при тестировании, т.е. вроде ссылка есть, а вроде и нет
А в ресурсах создаем страницу, в которую можно включить любой текст и обязательно указываем чанк с картой: [[$siteMap]]
Такой варинат позволит вам не создавать отдельный шаблон для вывода, как представлено на большинстве ресурсов в сети, а можно будет делать вывод через основной шаблон сайта.
Данные чанка можно разместить непосредственно в коде ресурса, НО, если у вас стоит какой-нибудь пакет для редактирования кода страниц (CKEditor, TinyMCE и подобные им), то он обязательно наставляет свои теги в код (например обертку абзаца), либо преобразует код в обычный текст при сохранении и тогда точно весь вывод съедет.
Можно, конечно, заморочиться и в шаблоне прописать, что если id равно номеру карты сайта, то подключать соответствующий чанк, чтобы редактор страниц точно не убил наш код.