Добрый день. Прошу помощи!
На страницах разделов вывел стандартную битриксовскую веб-форму
Задача - в результатах веб-формы получать 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'); |