Деактивация раздела и 404 ошибка

Если раздел деактивирован, но не отдает 404 ошибку при переходе на него по прямой ссылке.

1. Открыть папку шаблона компонента файл и добавить в файл следующий код.


Код файла


<?php

if ($this->__templatePage=='section' and !empty($arResult['VARIABLES']['SECTION_CODE']) and !empty($arParams['IBLOCK_ID'])) 
{   
    $sectionResult = CIBlockSection::GetList(array(),array('IBLOCK_ID' => $arParams['IBLOCK_ID'], '=CODE' => $arResult['VARIABLES']['SECTION_CODE']), false, $arSelect = array('ACTIVE' ,'DESCRIPTION','DETAIL_PICTURE'));
    if ($sectionProp = $sectionResult->GetNext()) {
        if ($sectionProp['ACTIVE'] == 'N') {
            if (Bitrix\Main\Loader::includeModule("iblock")) {
                Bitrix\Iblock\Component\Tools::process404(
                    'Раздел неактивен'
                    , true
                    , true
                    , true
                    , '/404.php'
                );
            } else {
                LocalRedirect('/404.php');
            };
            die();
        }
    }
    unset($sectionResult); 
}

Если данного файла нет, то его нужно создать.

Менеджер
Команда ГВОЗДЕВСОФТ
Консультация специалиста
Менеджер
Команда ГВОЗДЕВСОФТ
Оставить заявку
Менеджер
Команда ГВОЗДЕВСОФТ
Заказать расчет