Код |
---|
<?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 */ use Bitrix\Main\Loader; use Bitrix\Main\ModuleManager; $this->setFrameMode(true); if (!isset($arParams['FILTER_VIEW_MODE']) || (string)$arParams['FILTER_VIEW_MODE'] == '') $arParams['FILTER_VIEW_MODE'] = 'VERTICAL'; $arParams['USE_FILTER'] = (isset($arParams['USE_FILTER']) && $arParams['USE_FILTER'] == 'Y' ? 'Y' : 'N'); $isVerticalFilter = ('Y' == $arParams['USE_FILTER'] && $arParams["FILTER_VIEW_MODE"] == "VERTICAL"); $isSidebar = ($arParams["SIDEBAR_SECTION_SHOW"] == "Y" && isset($arParams["SIDEBAR_PATH"]) && !empty($arParams["SIDEBAR_PATH"])); $isSidebarLeft = isset($arParams['SIDEBAR_SECTION_POSITION']) && $arParams['SIDEBAR_SECTION_POSITION'] === 'left'; $isFilter = ($arParams['USE_FILTER'] == 'Y'); if ($isFilter) { $arFilter = array( "IBLOCK_ID" => $arParams["IBLOCK_ID"], "ACTIVE" => "Y", "GLOBAL_ACTIVE" => "Y", ); if (0 < intval($arResult["VARIABLES"]["SECTION_ID"])) $arFilter["ID"] = $arResult["VARIABLES"]["SECTION_ID"]; elseif ('' != $arResult["VARIABLES"]["SECTION_CODE"]) $arFilter["=CODE"] = $arResult["VARIABLES"]["SECTION_CODE"]; $obCache = new CPHPCache(); if ($obCache->InitCache(36000, serialize($arFilter), "/iblock/catalog")) { $arCurSection = $obCache->GetVars(); } elseif ($obCache->StartDataCache()) { $arCurSection = array(); if (Loader::includeModule("iblock")) { $dbRes = CIBlockSection::GetList(array(), $arFilter, false, array("ID")); if(defined("BX_COMP_MANAGED_CACHE")) { global $CACHE_MANAGER; $CACHE_MANAGER->StartTagCache("/iblock/catalog"); if ($arCurSection = $dbRes->Fetch()) $CACHE_MANAGER->RegisterTag("iblock_id_".$arParams["IBLOCK_ID"]); $CACHE_MANAGER->EndTagCache(); } else { if(!$arCurSection = $dbRes->Fetch()) $arCurSection = array(); } } $obCache->EndDataCache($arCurSection); } if (!isset($arCurSection)) $arCurSection = array(); } if ($isVerticalFilter) { include($_SERVER["DOCUMENT_ROOT"] . "/" . $this->GetFolder() . "/section_vertical.php"); } else { include($_SERVER["DOCUMENT_ROOT"] . "/" . $this->GetFolder() . "/section_horizontal.php"); } |
Вывод списка товаров в последних разделах каталога
Серафим Попов: 05.08.2023 21:56:20
Как вывести список товаров в последних разделах каталога, если в bitrix:catalog в файле section.php ничего не менял
|
Михаил Базаров: 05.08.2023 22:10:48
Можно в файлах
/section_vertical.php и /section_horizontal.php Обвернуть вывод catalog.section в условие
|
Серафим Попов: 05.08.2023 22:35:51
Спасибо большое за помощь!
|
1С-Битрикс на моем Boosty канале
Блог-note: заметки разработчика
Показ страницы сайта в боковом слайдере, на примере всплывающей формы обратной связи.
Если вы хотите сделать подгрузку любой страницы сайта в боковой слайдер, для этого в битриксе есть метод BX.SidePanel.In...
Обновить страницу Inapbrowser в приложении Apache Cordova, при выходе из фона
Задача: Мобильное приложение, созданное на Apache Cordova должно перезагрузить текущую страницу, открытую с помощью плаг...
Вывод элементов с помощью API битрикс
Иногда, выводить элементы инфоблока с помощью компонентов, может оказаться избыточным. Например, если нужно вывести элем...
Бонус за выполненный заказ на внутренний счет пользователя
Задача: после того как заказ, в интернет-магазине, перешел в статус "Выполнен" начислить пользователю 5% от стоимости за...
Заполнить коэффициент единицы измерения (MEASURE_RATIO) из свойства элемента
Задача: Каталог наполняется из 1С, но 1С не передает коэффициент единицы измерения (особенность конкретной 1С, но во...
Вывести артикул в печатную форму бланка заказа
Задача: в печатную форму бланка заказа добавить артикулы товаров и данные о пользователе.
Обновление 1С-Битрикс с PHP 7, до поддержки версии PHP 8.3
Задача: обновить устаревший сайт на платформе 1С-Битрикс, который не получал обновлений уже более 4 лет и работает на PH...
Заполнить инфоблок брендов из свойства инфоблока с товарами
Задача: в интернет-магазине есть инфоблок с товарами, загружаемый из 1С, у которого заполнено свойство "Производите...
Фотогалерея на базе компонента новостей, с fancybox.
Это заметка обновление к очень старой, уже имеющейся на сайте. Сделаем что-то типа фотогалереи на базе встроеннного в би...