Добрый день. Прошу помощи!
На страницах разделов вывел стандартную битриксовскую веб-форму
Задача - в результатах веб-формы получать URL и наименование раздела, в котором она была заполнена.
Названия решил получать из SECTION_META_TITLE
Завел два скрытых вопроса, отправился писать код в init.php
С URL все получилось просто, через $_SERVER["REQUEST_URI"], а вот наименование раздела заполнять не получается
В коде ниже понятно, почему он не отрабатывает - $arResult там никакого нет
Пробовал объявлять ID раздела как глобальную переменную, пробовал GetDirProperty и GetDirPropertyList - не выходит
Собственно, вопрос - как в init.php, в эту мою функцию получить название, SECTION_META_TITLE, или хотя бы ID раздела?
Спасибо!
На страницах разделов вывел стандартную битриксовскую веб-форму
Задача - в результатах веб-формы получать URL и наименование раздела, в котором она была заполнена.
Названия решил получать из SECTION_META_TITLE
Завел два скрытых вопроса, отправился писать код в init.php
С URL все получилось просто, через $_SERVER["REQUEST_URI"], а вот наименование раздела заполнять не получается
В коде ниже понятно, почему он не отрабатывает - $arResult там никакого нет
Пробовал объявлять ID раздела как глобальную переменную, пробовал GetDirProperty и GetDirPropertyList - не выходит
Собственно, вопрос - как в init.php, в эту мою функцию получить название, SECTION_META_TITLE, или хотя бы ID раздела?
Спасибо!
| Код |
|---|
function my_onAfterResultAddUpdate($WEB_FORM_ID, $RESULT_ID)
{
CModule::IncludeModule("iblock") ;
// действие обработчика распространяется только на форму с ID=9
if ($WEB_FORM_ID == 9) {
$CurrentUrl = $_SERVER["REQUEST_URI"];
//Достаем сео значения из 18го инфоблока
$ipropValues = new \Bitrix\Iblock\InheritedProperty\SectionValues(18,$arResult["VARIABLES"]["SECTION_ID"]);
$IPROPERTY = $ipropValues->getValues();
CFormResult::SetField($RESULT_ID, 'FORM_URL', array("40" => $CurrentUrl));
CFormResult::SetField($RESULT_ID, 'CAT_NAME', array("42" => $IPROPERTY['SECTION_META_TITLE']));
}
}
AddEventHandler('form', 'onAfterResultAdd', 'my_onAfterResultAddUpdate'); |