| Код |
|---|
<?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");
}
|
Вывод списка товаров в последних разделах каталога
Вопросы и ответы по 1С-Битрикс, разборы реальных задач и обсуждение заметок блога. Задайте вопрос или помогите другим — все сообщения проходят модерацию.
|
Серафим Попов: 05.08.2023 09:00:00
Как вывести список товаров в последних разделах каталога, если в bitrix:catalog в файле section.php ничего не менял
|
|
Михаил Базаров: 05.08.2023 10:00:00
Можно в файлах
/section_vertical.php и /section_horizontal.php Обвернуть вывод catalog.section в условие
|
|
Серафим Попов: 05.08.2023 10:00:00
Спасибо большое за помощь!
|
Индивидуальный предприниматель
- mihail@bazarow.ru
- Открыть чат в МАКС
- ВКонтакте
- Перейти в Telegram
- Связаться через сайт
Работаю официально, с заключением договора и предоставлением всех закрывающих документов.
Заметки по 1С-Битрикс
-
Определить местоположение пользователя и показать магазины поблизости.
Задача: в мобильном приложении, которое открывает сайт на 1С-Битрикс внутри себя, нужно определить местоположение пользователя и показать близжайшие к...
-
Показать пользователей онлайн на странице сайта
Задача: показать на странице сайта пользователей которые сейчас находятся на сайте. Используется штатный модуль "Веб-аналитика" - должен быт...
-
Мобильные версии страниц и поисковые системы
Согласно требования поисковых систем: Яндекс и Google, в случае если у вашего сайта имеется мобильная версия, нужно уведомить поисковые системы о нали...
-
Композитный сайт на 1С-Битрикс
Для новых клиентов: Все новые проекты будут включать в себя применение технологии "Композитный сайт" - данная услуга уже включена в стоимость разработ...
-
Получение списка Highload блоков с помощью API Битрикс
1С-Битрикс предоставляет мощный инструментарий для обеспечения эффективной работы ваших проектов. Одним из способов управления Highload блоками в Битр...
-
Сгенерировать скидочные купоны, при заказе и отправить на почту
Задача: после того как пользователь сделал заказ, нужно сгенерировать одноразовые купоны для скидки (правила корзины) и отправить, эти купоны, на почт...