82  /  330

Управление пунктами навигационной цепочки

Просмотров: 5413 (Статистика ведётся с 06.02.2017)

Управление через визуальный интерфейс системы

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


Заголовок раздела сайта задается в служебном файле .section.php, который находится в соответствующем разделе. В данном файле могут быть использованы следующие переменные:

  • $sSectionName - заголовок раздела;
  • $sChainTemplate - абсолютный путь к шаблону навигационной цепочки (данная переменная используется крайне редко)

Пример файла .section.php:

<?
$sSectionName = "О компании";
$sChainTemplate = $_SERVER["DOCUMENT_ROOT"]."/ru/about/chain_template.php";
?>

Визуально же название ссылки на раздел сайта в навигационной цепочке указывается с помощью поля Заголовок в форме настройки свойств раздела.

Переход к форме настройки свойств раздела можно осуществить:

Чтобы изменить название ссылки на раздел в цепочке навигации, нужно отредактировать Заголовок папки. Название ссылки будет изменено сразу же после сохранения новых свойств раздела.

Примечание: Для того чтобы ссылка на какой-либо раздел не выводилась в навигационной цепочке сайта, нужно удалить название раздела из поля Заголовок и сохранить внесенные изменения.

Управление через код страницы

С помощью php функции AddChainItem в цепочку навигации могут быть добавлены дополнительные пункты. В качестве значений пунктов навигационной цепочки могут использоваться как статические, так и динамические величины:

<?
 //---Первым параметром функции AddChainItem() задается название, 
 //---которое будет показано в навигационной цепочке, вторым параметром задается 
 //---ссылка для перехода.
 //---Значения параметров могут быть как статическими, так и динамическими.
 //---в приведенном примере название раздела задано статической величиной, а 
 //---ссылка формируется динамически.  
 
 $APPLICATION->AddChainItem("Детальная информация о товаре", "catalog.php?BID=".$arIBlock["ID"]."&ID=".$arSection["ID"]);

 //---В приведенном ниже примере обе величины формируются динамически.
 //---В качестве названия подставляется текущее значение раздела каталога.
 
 $APPLICATION->AddChainItem($arSection["NAME"], "catalog.php?BID=".$arIBlock["ID"]."&ID=".$arSection["ID"]);
 
 ?>

Чтобы выводить в навигационную цепочку название текущей страницы, необходимо вставить вызов функции AddChainItem() в файле footer.php, т.е. после вывода содержимого рабочей области.

<?$APPLICATION->AddChainItem($APPLICATION->GetTitle());?>

Некоторые пункты навигационной цепочки могут не содержать ссылки на какой-либо раздел или документ сайта, т.е. могут быть представлены в виде обычного текста (например, название текущей страницы).

Такие пункты создаются путем добавления в шаблон показа навигационной цепочки следующего кода:

if($arResult[$index]["LINK"] <> "") $strReturn .= '<li><a href="'.$arResult[$index]["LINK"].'" title="'.$title.'">'.$title.'</a></li>'; else $strReturn .= '<li>'.$title.'</li>';

Отдельные компоненты могут также добавлять в навигационную цепочку заголовок текущей страницы сайта или, например, заголовок текущей новости или товара каталога. Так, например, комплексный компонент Новости (bitrix:news) последовательно добавляет в навигационную цепочку названия каталогов и групп новостей по мере погружения вглубь по уровням, если это установлено в его настройках.

Аналогичным образом в навигационную цепочку добавляются названия форумов и тем форумов.

В этом случае значение пункта навигационной цепочки для данной страницы определяется непосредственно в документе. Для этого используется функция AddChainItem().


17
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии