Документация для разработчиков

GetNavChain

string
CMain::GetNavChain(
 mixed path = false,
 int NumFrom = 0, 
 mixed NavChainPath = false,
 bool IncludeOnce=false,
 bool ShowIcons = true
)

Возвращает HTML представляющий из себя навигационную цепочку.

Если вам не нужно показывать навигационную цепочку на какой либо странице, вам достаточно вставить в теле страницы код, инициализирующий свойство страницы "NOT_SHOW_NAV_CHAIN" значением "Y":

$APPLICATION->SetPageProperty("NOT_SHOW_NAV_CHAIN", "Y");
Поддержка этого свойства встроена в данный метод.

Нестатический метод.

Параметры

ПараметрОписание С версии
path Путь для которого будет построена навигационная цепочка. В случае многосайтовой версии, если DOCUMENT_ROOT у сайтов разный (задается в поле "Путь к корневой папке веб-сервера" в настройках сайта), то в данном параметре необходимо передавать массив вида:
array("ID сайта", "путь")
Необязателен. По умолчанию - "false" - текущий путь.
NumFrom Начиная от какого пункта будет построена навигационная цепочка
Необязателен. По умолчанию - "0".
NavChainPath Путь к шаблону навигационной цепочки.
Необязателен. По умолчанию - "false", что предполагает поиск пути к шаблону навигационной цепочки по алгоритму представленному на странице Управление показом цепочки
3.3.11
IncludeOnce Необязателен. По умолчанию - "false". В режиме правки с параметром ShowIcons=true цепочка не строится.5.0.10
ShowIcons Флаг отображения иконки. Необязателен. По умолчанию - "true".5.9.0

См. также



Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
3
Антон Долганин
Подход Ивана крайне устаревший. Рекомендую для получения такого массива использовать
Код
$APPLICATION->arAdditionalChain

Посмотреть что там в массиве:
Код
print_r($APPLICATION->arAdditionalChain);
0
akisnn
Иван Левый, спасибо за вариант.
К сожалению, метод дает осечку, если заходить администратором в режиме правки, то выдается вот это

Код
<div id="bx_incl_area_5_1">Array<sc ript type="text/javascript">BX .ready(f unction() {(new BX .CMenuOpener({'parent':'bx_incl_area_5_1','id':'comp_5_1','menu':[{'ICONCLASS':'nav-template','TITLE':'','TEXT':'Редактировать шаблон цепочки','ONCLICK':'jsUtils.Redirect([], \'/bitrix/admin/fileman_file_edit.php?lang=ru&site=s1&back_url=%2Fcatalog%2F1%2F17%2F&full_src=Y&path=%2Fbitrix%2Ftemplates%2F.default%2Fchain_template.php\')'}]})).Show()});</sc ript></div><sc ript type="text/javascript">BX .admin.setComponentBorder('bx_incl_area_5_1')</sc ript>
1
Иван Левый
Если нам нужно получить массив пунктов навигационной цепочки (название раздела и ссылку), это можно делать так:

Создать файл /bitrix/templates/.default/chain_template.php с таким содержанием:

Код
<?
return $arResult;
?>


Теперь, если мы находимся на странице /about/news/ можно выполнить такой код:

Код
global $APPLICATION;
$chain = $APPLICATION->GetNavChain(false, false, false, true);
echo "<pre>";
print_r($chain);
echo "</pre>";


то он вернет названия разделов:

Код
  0 => Array[2]
        TITLE => "Про салон"
        LINK => "/about/"
    1 => Array[2]
        TITLE => "Новости"
        LINK => "/about/news/"


Т.е. это названия разделов, которые заданы в файле .section.php и их адреса.
© «Битрикс», 2001-2019, «1С-Битрикс», 2019
Наверх