Создание сайтов
Создание сайтов - отличный способ поддержать бренд уже известной компании, а также заявить о себе на стадии Start-Up. Доверьте создание сайта профессионалам и Ваш сайт станет источником увеличения прибыли компании.
Подробнее
Продвижение сайтов
Интернет-агентство ТОП10 предлагает воспользоваться услугами оптимизации сайтов, а именно продвижением сайтов в поисковых системах и контекстной рекламой, так как благодаря этому Ваш сайт найдут.
Подробнее
Тех. поддержка
Информация о вашей деятельности всегда должна быть актуальной. Именно поэтому обновление контента на сайте необходимо осуществлять своевременно, вслед за изменениями, в вашей организации.
Подробнее
Шаблон компонента bitrix:catalog.section.list
Шаблон компонента bitrix:catalog.section.list
Бывает так, что с помощью компонента bitrix:catalog.section.list необходимо вывести дерево разделов для меню. Например для меню продукции или навигации по разделам.
Проблема в том, что стандартного шаблона вывода такого дерева нет.
Я написал шаблон на основе стандартного tree от данного компонента. Отличие в том, что стандартный шаблон добавляется подразделы "ul" после элемента "li", а не внутри него, как бывает необходимо в случае с меню.
Итак, код самого шаблона компонента:
1. Для вывода стрелки, управляющей раскрытием вложенного списка и начала самого списка ul
2. Для закрытия всех необходимых ul и li
3. Если не выполняется ни одно из первых двух условий, то закрыть предыдущий элемент списка li, который, самое главное, не закрывается сам по себе, как видно из кода
Проблема в том, что стандартного шаблона вывода такого дерева нет.
Я написал шаблон на основе стандартного tree от данного компонента. Отличие в том, что стандартный шаблон добавляется подразделы "ul" после элемента "li", а не внутри него, как бывает необходимо в случае с меню.
Итак, код самого шаблона компонента:
Код
Здесь идет череда условий:
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>
<ul class="left-menu">
<?
$CURRENT_DEPTH=$arResult["SECTION"]["DEPTH_LEVEL"]+1;
foreach($arResult["SECTIONS"] as $arSection):
$this->AddEditAction($arSection['ID'], $arSection['EDIT_LINK'], CIBlock::GetArrayByID($arSection["IBLOCK_ID"], "SECTION_EDIT"));
$this->AddDeleteAction($arSection['ID'], $arSection['DELETE_LINK'], CIBlock::GetArrayByID($arSection["IBLOCK_ID"], "SECTION_DELETE"), array("CONFIRM" => GetMessage('CT_BCSL_ELEMENT_DELETE_CONFIRM')));
?>
<?if($CURRENT_DEPTH<$arSection["DEPTH_LEVEL"]):?>
<span class="arrow-down"><img src="<?=SITE_TEMPLATE_PATH?>/img/marker.png"></span>
<ul class="left-menu-fallout">
<?elseif($CURRENT_DEPTH>$arSection["DEPTH_LEVEL"]):?>
<?=str_repeat("</ul>", $CURRENT_DEPTH - $arSection["DEPTH_LEVEL"]);?>
</li>
<?else:?>
</li>
<?endif;?>
<li id="<?=$this->GetEditAreaId($arSection['ID']);?>">
<a href="<?=$arSection["SECTION_PAGE_URL"];?>"><?=$arSection["NAME"];?></a>
<?$CURRENT_DEPTH = $arSection["DEPTH_LEVEL"];?>
<?endforeach?>
</ul>
1. Для вывода стрелки, управляющей раскрытием вложенного списка и начала самого списка ul
2. Для закрытия всех необходимых ul и li
3. Если не выполняется ни одно из первых двух условий, то закрыть предыдущий элемент списка li, который, самое главное, не закрывается сам по себе, как видно из кода
07.04.201315:197 Апреля 2013 15:19
Ваше имя*
E-mail
Тема
Добавить файлы
Загрузить файлы
#name#
#size#
#name#
Файлы:
Перетащите один или несколько файлов в эту область
или выберите файл на компьютере
или выберите файл на компьютере
Файлы:
Загрузить файлы
Код подтверждения (символы на картинке)*
Отправить