Генерация символьного кода элемента

Просмотров: 3714

Часто бывает, что сайт был сдан и не настроен. Символьный код не генерировался, и вдруг вспоминают про СЕО. В результате нужно большому количеству элементов сформировать символьный код.

Пример реализации

//Вариант для элементов

$arFilter = Array("IBLOCK_ID"=>29); //свой ID инфоблока

$arSelect = Array("ID", "NAME"); //делаем выборку элементов

$res = CIBlockElement::GetList(Array(), $arFilter, false, false, $arSelect);

while($ob = $res->GetNextElement()){

   $ccc++; //получаем поля

   $arFieldsElement = $ob->GetFields();

   $params = Array(

      "max_len" => "75", // обрезает символьный код до 75 символов

      "change_case" => "L", // буквы преобразуются к нижнему регистру

      "replace_space" => "-", // меняем пробелы на нижнее подчеркивание

      "replace_other" => "-", // меняем левые символы на нижнее подчеркивание

      "delete_repeat_replace" => "true", // удаляем повторяющиеся нижние подчеркивания

      "use_google" => "false", // отключаем использование google

   );

//транслит символьного кода    $CODE_translit = CUtil::translit($arFieldsElement["NAME"], "ru", $params);

//обновляем элемент

   $el = new CIBlockElement;

   $arLoadProductArray = Array(

     "CODE" => $CODE_translit

   );

   $PRODUCT_ID = $arFieldsElement['ID'];  // изменяем элемент с кодом (ID)

   $res_upd_el = $el->Update($PRODUCT_ID, $arLoadProductArray);

}


Ещё статьи:

02.04.2026 Разговоры о фрилансе
Предыстория - автор вопроса хочет войти в IT сферу, я человеку начал подсказывать в комментариях на форуме. На примере вопросов и ответов в разговоре можно увидеть типовые ошибки и непонимание начинающего, и в будущем избежать повторения ошибок.

21.03.2026 PHP файловый менеджер
Попался мне такой PHP файловый менеджер, вполне функциональный, выкладываю в копилку скриптов

21.03.2026 Ошибка CUser::IsAuthorized() cannot be called statically
Такая ошибка старых весрий битрикс давно известна. Нужно заменить CUser::IsAuthorized() на $USER->IsAuthorized(), но в моём случае я сначала не смог найти место, где же находится проблема.

© 2015-2026 Web админ
Связаться по WhatsApp