// init.php $redirectHlblock = Bitrix\Highloadblock\HighloadBlockTable::getById(3)->fetch(); $redirectEntity = Bitrix\Highloadblock\HighloadBlockTable::compileEntity($redirectHlblock); $redirectClass = $redirectEntity->getDataClass(); // Редиректы $redirectData = $redirectClass::getList( array( "select" => array("*"), "filter" => array( 'UF_SITE_ID' => SITE_ID, 'UF_URL_FROM' => $APPLICATION->GetCurPage(false), '>UF_ACTIVE' => 0, ) ) )->fetch(); if (isset($redirectData['UF_URL_TO']) && !empty($redirectData['UF_URL_TO'])) { $status = CUserFieldEnum::GetList(array(), array('ID' => $redirectData['UF_STATUS']))->fetch(); LocalRedirect($redirectData['UF_URL_TO'], true, $status['VALUE']); } // Подмена URL $replaceData = $redirectClass::getList( array( "select" => array("*"), "filter" => array( 'UF_SITE_ID' => SITE_ID, 'UF_URL_TO' => $APPLICATION->GetCurPage(false), '>UF_ACTIVE' => 0, ) ) )->fetch(); if ($replaceData) { $context = Bitrix\Main\Application::getInstance()->getContext(); $server = $context->getServer(); $arServer = $server->toArray(); $_SERVER['REQUEST_URI'] = $replaceData['UF_URL_FROM']; $arServer['REQUEST_URI'] = $replaceData['UF_URL_FROM']; $server->set($arServer); $context->initialize( new Bitrix\Main\HttpRequest($server, array() , array() , array() , $_COOKIE), $context->getResponse(), $server ); $APPLICATION->reinitPath(); define('INCLUDE_CATALOG_INDEX', true); }