• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела wpt лично.

Помощь Вывести названия разделов в списке товаров

volodka993

Постоялец
Регистрация
25 Май 2014
Сообщения
60
Реакции
28
Приветствую.
Имеется компонент лежащий в section.php

Код:
<?$APPLICATION->IncludeComponent(
    "custom:catalog.section.list",
    "lvl3",
    Array(
        "IBLOCK_TYPE" => $arParams["IBLOCK_TYPE"],
        "IBLOCK_ID" => $arParams["IBLOCK_ID"],
        "SECTION_ID" => $arResult["VARIABLES"]["SECTION_ID"],
        "SECTION_CODE" => $arResult["VARIABLES"]["SECTION_CODE"],
        "DISPLAY_PANEL" => $arParams["DISPLAY_PANEL"],
        "CACHE_TYPE" => $arParams["CACHE_TYPE"],
        "CACHE_TIME" => $arParams["CACHE_TIME"],
        "CACHE_GROUPS" => $arParams["CACHE_GROUPS"],
        "SECTION_URL" => $arResult["FOLDER"].$arResult["URL_TEMPLATES"]["section"],
        "COUNT_ELEMENTS" => "Y",
        "ADD_SECTIONS_CHAIN" => "N",
        "SHOW_SECTIONS_LIST_PREVIEW" => $arParams["SHOW_SECTIONS_LIST_PREVIEW"],
        "SECTIONS_LIST_PREVIEW_PROPERTY" => $arParams["SECTION_PREVIEW_PROPERTY"],
        "SHOW_SECTION_LIST_PICTURES" => $arParams["SHOW_SECTION_PICTURES"],
        "SECTIONS_LIST_PREVIEW_DESCRIPTION" => $arParams["SECTION_PREVIEW_DESCRIPTION"],
        "TOP_DEPTH" => "1",
    ),
    $component
);?>

Имеется шаблон вывода компонента:
Код:
<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?>

    <div id="left_menu" class="shadow bg_white">
        <ul>
            <?foreach ($arResult['SECTIONS'] as $section):?>
                <li>
                    <div>
                        <a href="<?=$section['SECTION_PAGE_URL']?>" class="root-item select_item"><?=$section['NAME']?></a>
                    </div>
                </li>
            <?endforeach?>
        </ul>
    </div>


Имеется инфоблок содержащий разделы и подразделы.
-Котлы
--Твердотопливные котлы
--Газовые котлы
--Электрические котлы


-Водонагреватели
--Твердотопливные водонагреватели
--Газовые водонагреватели
--Электрические водонагреватели


Мне необходимо чтобы названия разделов выводились не только в родительских разделах -Котлы и -Водонагреватели
Но еще и в подразделах выводились все названия главного раздела.
т.е чтобы я зайдя в --Твердотопливные котлы

увидел список разделов
-Котлы
--Твердотопливные котлы
--Газовые котлы
--Электрические котлы



Сейчас я вижу список разделов только в главном разделе
-Котлы.


Спасибо
 
Ну тут быстро не получится и надо копаться. Но самое простое решение из серии такого будет:

PHP:
            <?foreach ($arResult['SECTIONS'] as $section):?>
                <li>
                    <div>
                        <a href="<?=$section['SECTION_PAGE_URL']?>" class="root-item select_item"><?=$section['NAME']?></a>
                    </div>


<?$APPLICATION->IncludeComponent(
    "custom:catalog.section.list",
    "lvl3",
    Array(
        "IBLOCK_TYPE" => $arParams["IBLOCK_TYPE"],
        "IBLOCK_ID" => $arParams["IBLOCK_ID"],
        "SECTION_ID" => $section["SECTION_ID"],
        "DISPLAY_PANEL" => $arParams["DISPLAY_PANEL"],
        "CACHE_TYPE" => $arParams["CACHE_TYPE"],
        "CACHE_TIME" => $arParams["CACHE_TIME"],
        "CACHE_GROUPS" => $arParams["CACHE_GROUPS"],
        "SECTION_URL" => $arResult["FOLDER"].$arResult["URL_TEMPLATES"]["section"],
        "COUNT_ELEMENTS" => "Y",
        "ADD_SECTIONS_CHAIN" => "N",
        "SHOW_SECTIONS_LIST_PREVIEW" => $arParams["SHOW_SECTIONS_LIST_PREVIEW"],
        "SECTIONS_LIST_PREVIEW_PROPERTY" => $arParams["SECTION_PREVIEW_PROPERTY"],
        "SHOW_SECTION_LIST_PICTURES" => $arParams["SHOW_SECTION_PICTURES"],
        "SECTIONS_LIST_PREVIEW_DESCRIPTION" => $arParams["SECTION_PREVIEW_DESCRIPTION"],
        "TOP_DEPTH" => "1",
    ),
    $component
);?>
                </li>
            <?endforeach?>

возможно вместо "SECTION_ID" => $section["SECTION_ID"], будет "SECTION_ID" => $section["ID"],
 
Ошибся. В catalog.section.list есть параметр "TOP_DEPTH" => "1", установи "TOP_DEPTH" => "2". В данном компоненте это предусмотрено изначально.
 
Ошибся. В catalog.section.list есть параметр "TOP_DEPTH" => "1", установи "TOP_DEPTH" => "2". В данном компоненте это предусмотрено изначально.

Нет не получается.
"TOP_DEPTH" - это глубина разделов.

А мне необходимо немного другое.
Есть разделы:

Твердотопливные котлы.
Газовые котлы
Электрические котлы
Пеллетные котлы




Вот есть структура:
Каталог товаров
- Котлы
- Твердотопливные котлы.
Газовые котлы
Электрические котлы
Пеллетные котлы


Названия разделов показываются:
Каталог товаров - Котлы.


Необходимо чтобы названия разделов показывались и по пути:
Каталог товаров - Котлы - Твердотопливные котлы.
т.е по адресу /catalog/kotly/tverdotoplivnye/
я хочу вывести названия всех подразделов:

Твердотопливные котлы.
Газовые котлы
Электрические котлы
Пеллетные котлы
 
Решил след образом

Код:
    <?
    $section_code = $arResult["VARIABLES"]["SECTION_CODE_PATH"];
    $section_url = explode("/", $section_code);
    if($section_url[1]!=''){
        /*DEPTH_LEVEL > 2*/
        $res = CIBlockSection::GetByID($arResult["VARIABLES"]["SECTION_ID"]);
        if($ar_res = $res->GetNext()) {
            $section_id = $ar_res['IBLOCK_SECTION_ID'];
        }
        $arIBlockSection = GetIBlockSection($section_id);
        $section = $arIBlockSection["CODE"];
    }  else {
        $section = $arResult["VARIABLES"]["SECTION_CODE"];
        $section_id = $arResult["VARIABLES"]["SECTION_ID"];
    }?>

    <?$APPLICATION->IncludeComponent(
        "custom:catalog.section.list",
        "lvl3",
        array(
            "IBLOCK_TYPE" => $arParams["IBLOCK_TYPE"],
            "IBLOCK_ID" => $arParams["IBLOCK_ID"],
            "SECTION_ID" => $section_id, //$arResult["VARIABLES"]["SECTION_ID"],
            "SECTION_CODE" => $section,//$arResult["VARIABLES"]["SECTION_CODE"],
            "CACHE_TYPE" => "N",//$arParams["CACHE_TYPE"],
            "CACHE_TIME" => $arParams["CACHE_TIME"],
            "CACHE_GROUPS" => $arParams["CACHE_GROUPS"],
            "COUNT_ELEMENTS" => 'N',
            "ADD_SECTIONS_CHAIN" => "N",
            "TOP_DEPTH" => 2,
            "SECTION_URL" => $arResult["FOLDER"].$arResult["URL_TEMPLATES"]["section"],
            "VIEW_MODE" => $arParams["SECTIONS_VIEW_MODE"],
            "HIDE_SECTION_NAME" => (isset($arParams["SECTIONS_HIDE_SECTION_NAME"]) ? $arParams["SECTIONS_HIDE_SECTION_NAME"] : "N"),
            "SEP_LEVEL" => 2
            ),
    $component,
        array("HIDE_ICONS" => "Y")
    );?>
 
Покажи на скрине, как теперь зто выглядит на сайте твоем!
 
Назад
Сверху