29
Дек
2016

Как в битриксе автоматически добавить ко всем файлам символьный код?

Как в битриксе автоматически добавить ко всем файлам символьный код?

Цель символьного кода: образовать url для товара, без символьного кода у меня пустой адрес на всех товарах, где нет символьного кода

Создал в папке php_interface файл под названием init.php

Добавил такой код:

AddEventHandler("iblock", "OnBeforeIBlockElementAdd", "addElement");
AddEventHandler("iblock", "OnBeforeIBlockElementUpdate",   array("MyEventHandlerClass", "IBlockElementAddCodeFromName"));

function addElement($arFields){

      $arParams = array(
               "max_len" => "60", // обрезаем символьный код до 60 символов
               "change_case" => "L", // приводим к нижнему регистру
               "replace_space" => "-", // меняем пробелы на тире
               "replace_other" => "-", // мен¤ем плохие символы на тире
               "delete_repeat_replace" => "true", // удаляем повтор¤ющиеся тире
               "use_google" => "false", // отключаем использование google
            );

      $arFields["CODE"] = Cutil::translit($arFields["NAME"], "ru", $arParams);

}

Сохранил, обновил кеш, но данные не изменились, т.е. ни одному товару не добавился символьный код. Может дополнительно как-то нужно вызвать функцию или еще что-то делать? Может есть другие варианты?

Источник: https://ru.stackoverflow.com/questions/609257/%D0%9A%D0%B0%D0%BA-%D0%B2-%D0%B1%D0%B8%D1%82%D1%80%D0%B8%D0%BA%D1%81%D0%B5-%D0%B0%D0%B2%D1%82%D0%BE%D0%BC%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8-%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C-%D0%BA%D0%BE-%D0%B2%D1%81%D0%B5%D0%BC-%D1%84%D0%B0%D0%B9%D0%BB%D0%B0%D0%BC-%D1%81%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9-%D0%BA%D0%BE%D0%B4

Share

Тебе может это понравится...