Код |
---|
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?> <div class="catalog-section-list"> <ul> <? $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'))); $CURRENT_DEPTH = $arSection["DEPTH_LEVEL"]; if($arSection["DEPTH_LEVEL"] == 3) { echo '<li id="'.$this->GetEditAreaId($arSection['ID']).'"><img src="'.$arSection["PICTURE"]["SRC"].'"><a href="'.$arSection["SECTION_PAGE_URL"].'">'.$arSection["NAME"].'</a></li>'; } } ?> </ul> </div> |
Код |
---|
if($arSection["DEPTH_LEVEL"] == 3) |
Код |
---|
if(isset($arSection['ID']) && $arSection['ID'] == $_GET['ID']) |
Код |
---|
if(isset($arSection['ID']) && $arSection['ID'] == 28) |
Цитата |
---|
MyIE пишет:
Логика такая: мы зашли в каталог - вывели только разделы первого уровня. Прогли в один из разделов, если он имеет в себе разделы, то вывели только их, элементы не выводит. Прошли еще ниже (тыкнули по одному из разделов), если в нем есть разделы, то опять же выводим их (елементы не выводятся), если их нет, то выводим элементы и т.д.Какой шаблон должен быть - не помню. Да и логика важнее, чем верстка. Надеюсь ответил на ваш вопрос, если правильно его понял. |
Код |
---|
<? $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"]) { echo "<ul>"; } elseif($CURRENT_DEPTH>$arSection["DEPTH_LEVEL"]) { echo str_repeat("</ul>", $CURRENT_DEPTH - $arSection["DEPTH_LEVEL"]); } $CURRENT_DEPTH = $arSection["DEPTH_LEVEL"]; $bHasChildren = is_array($arSection['CHILDREN']) && count($arSection['CHILDREN']) > 0; if(isset($arSection['ID']) && $arSection['ID'] == 28) { foreach($arSection['CHILDREN'] as $key => $arChild) { echo '<li id="'.$this->GetEditAreaId($arChild['ID']).'"><img src="'.$arChild["PICTURE"]["SRC"].'"><a href="'.$arChild["SECTION_PAGE_URL"].'">'.$arChild["NAME"].'</a></li>'; } } } ?> |