Всем привет. Скажу сразу, что я не силен в этом двигателе и вообще в программировании. Работал с битриксом в 2013, уже все подзабыл. Не знаю что сейчас творят эти дьяволы в 1c-bitrix, но в прошлый раз было туго.
Итак, компонент catalog.section.list.
Сейчас структура выглядит так -->
/catalog/ - я так понимаю это первый уровень.
Заходим в любой из разделов, получается - /catalog/1 или 2 разделы/
При переходе в любой подраздел, мы теряем родителей, как и в первом случаи.
Как сделать так, чтобы при переходе в любой раздел, который больше не имеет подразделов, показывались предыдущие разделы, т.е те, где находится родитель?
Спасибо:)
Итак, компонент catalog.section.list.
Сейчас структура выглядит так -->
/catalog/ - я так понимаю это первый уровень.
Заходим в любой из разделов, получается - /catalog/1 или 2 разделы/
При переходе в любой подраздел, мы теряем родителей, как и в первом случаи.
Как сделать так, чтобы при переходе в любой раздел, который больше не имеет подразделов, показывались предыдущие разделы, т.е те, где находится родитель?
Спасибо:)
Код |
---|
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die(); /** @var array $arParams */ /** @var array $arResult */ /** @global CMain $APPLICATION */ /** @global CUser $USER */ /** @global CDatabase $DB */ /** @var CBitrixComponentTemplate $this */ /** @var string $templateName */ /** @var string $templateFile */ /** @var string $templateFolder */ /** @var string $componentPath */ /** @var CBitrixComponent $component */ $this->setFrameMode(true); $arViewModeList = $arResult['VIEW_MODE_LIST']; $arViewStyles = array( 'LIST' => array( 'CONT' => 'bx_sitemap', 'TITLE' => 'bx_sitemap_title', 'LIST' => 'bx_sitemap_ul', ), 'LINE' => array( 'CONT' => 'bx_catalog_line', 'TITLE' => 'bx_catalog_line_category_title', 'LIST' => 'bx_catalog_line_ul', 'EMPTY_IMG' => $this->GetFolder().'/images/line-empty.png' ), 'TEXT' => array( 'CONT' => 'bx_catalog_text', 'TITLE' => 'bx_catalog_text_category_title', 'LIST' => 'bx_catalog_text_ul' ), 'TILE' => array( 'CONT' => 'bx_catalog_tile', 'TITLE' => 'bx_catalog_tile_category_title', 'LIST' => 'bx_catalog_tile_ul', 'EMPTY_IMG' => $this->GetFolder().'/images/tile-empty.png' ) ); $arCurView = $arViewStyles[$arParams['VIEW_MODE']]; $strSectionEdit = CIBlock::GetArrayByID($arParams["IBLOCK_ID"], "SECTION_EDIT"); $strSectionDelete = CIBlock::GetArrayByID($arParams["IBLOCK_ID"], "SECTION_DELETE"); $arSectionDeleteParams = array("CONFIRM" => GetMessage('CT_BCSL_ELEMENT_DELETE_CONFIRM')); ?> <div class="page-header"> <div class="container"> <div class="row"> <div class="span12"> <? if ('Y' == $arParams['SHOW_PARENT_NAME'] && 0 < $arResult['SECTION']['ID']) { $this->AddEditAction($arResult['SECTION']['ID'], $arResult['SECTION']['EDIT_LINK'], $strSectionEdit); $this->AddDeleteAction($arResult['SECTION']['ID'], $arResult['SECTION']['DELETE_LINK'], $strSectionDelete, $arSectionDeleteParams); ?><h1><? echo ( isset($arResult['SECTION']["IPROPERTY_VALUES"]["SECTION_PAGE_TITLE"]) && $arResult['SECTION']["IPROPERTY_VALUES"]["SECTION_PAGE_TITLE"] != "" ? $arResult['SECTION']["IPROPERTY_VALUES"]["SECTION_PAGE_TITLE"] : $arResult['SECTION']['NAME'] ); ?></h1><? }?> </div> </div> </div> </div> <div class="container"> <div class="row"> <div class="span12"> <?if (0 < $arResult["SECTIONS_COUNT"]):?> <div class="tagsCloud1"> <div class="header">Выберите</div> <div class="links1"> <? $CURRENT_DEPTH = $arResult["SECTION"]["DEPTH_LEVEL"] + 1; $topDepth = $CURRENT_DEPTH; 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 ''; } elseif ($CURRENT_DEPTH > $arSection["DEPTH_LEVEL"]) { echo ''; if ($topDepth == $arSection["DEPTH_LEVEL"]) { echo ''; } } $sectionClasses = ""; $sectionClasses .= " level" . $arSection["DEPTH_LEVEL"]; if ($arSection["PARENT"]) { $sectionClasses .= " parent"; } ?> <a href="<? echo $arSection["SECTION_PAGE_URL"]; ?>" title="<? echo $arSection["NAME"]; ?>"> <? echo $arSection["NAME"]; ?> <? if ($arParams["COUNT_ELEMENTS"]) { echo ' ' . $arSection["ELEMENT_CNT"]; } ?> </a> <? if (!$arSection["PARENT"] || $CURRENT_DEPTH < $arSection["DEPTH_LEVEL"]) { echo ''; if ($topDepth == $arSection["DEPTH_LEVEL"]) { echo ''; } } $CURRENT_DEPTH = $arSection["DEPTH_LEVEL"]; ?> <? endforeach; ?> </div></div> <?else:?> <div class="tagsCloud1"> <div class="header">Выберите</div> <div class="links1"> sasdddddddd </div></div> <?endif;?> |