Программное обновление SEO полей разделов инфоблока в 1С Битрикс?

Добрый день, есть задача программно обновить seo поля в разделах инфоблока делаю так:

require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");

	// Загружаем данные из файла источника
	$sources = array();
	$file = file('export_seo_section.csv', FILE_IGNORE_NEW_LINES);

	// Создаем массив с данными
	foreach ($file as $key => $value) {
	    $sources[$key] = str_getcsv($value);
	}

	// Обработаем массив для сравнения
	foreach ($sources as $key => $value) {
		$source_data[$value[0]] = $value;
	}

	// ID Инфоблока
	$IBLOCK_ID = 24;

	// Получаем список разделов в инфоблоке
	$rsElement = CIBlockSection::GetList(array(), array("IBLOCK_ID"=>$IBLOCK_ID, "ACTIVE"=>"Y"), false); 

	// Проходимся циклом и формируем массив со значениями
	while ($arElement = $rsElement->GetNext()){
		// Для получения дополнительных свойств из вклавдки SEO
		$ipropValues = new \Bitrix\Iblock\InheritedProperty\SectionValues($arElement["IBLOCK_ID"], $arElement["ID"]);
		// Массив с результатами
		$arElement["IPROPERTY_VALUES"] = $ipropValues->getValues(); 

		foreach ($source_data as $key => $value) {

			if ($arElement["IPROPERTY_VALUES"]["SECTION_PAGE_TITLE"] == $key) {

				// Формируем массив для загрузки
				$LoadData= Array(
				  "ACTIVE" => "Y",
				  "IBLOCK_SECTION_ID" => $arElement['ID'],
				  "IBLOCK_ID" => $IBLOCK_ID,
				  "IPROPERTY_TEMPLATES"=>Array(
				      "SECTION_META_TITLE" => $value[1],
				      "SECTION_META_DESCRIPTION" => $value[2],
				   )
				);

				$res = new CIBlockSection;
				$res = $res->Update($arElement['ID'], $LoadData);

				print 'Обновили: ' .$arElement["IPROPERTY_VALUES"]["SECTION_PAGE_TITLE"].'<br/>';

			}
			
		}

	}


Сообщает об успехе, но по факту поля не обновляет, в массив LoadData все корректно подставляет.

array(4) {
  ["ACTIVE"]=>
  string(1) "Y"
  ["IBLOCK_SECTION_ID"]=>
  string(3) "722"
  ["IBLOCK_ID"]=>
  int(24)
  ["IPROPERTY_TEMPLATES"]=>
  array(2) {
    ["SECTION_META_TITLE"]=>
    string(146) "Продажа вентиляторов для всех видов холодильников и других холодильных систем."
    ["SECTION_META_DESCRIPTION"]=>
    string(349) "Вентиляторы в холодильнике служат для обдува холодильных камер систем NOFROST, в нашем каталоге представлен широкий выбор вентиляторов с техническим описанием, фотографиями и хорошими ценами."
  }
}


Кто сталкивался, подскажите в чем может быть проблема.
Спасибо.

UP: LAST_ERROR возвращает: Нельзя перенести раздел внутрь себя.
UP: Решил проблемка была тут:
$LoadData["IPROPERTY_TEMPLATES"] = Array(
				    "SECTION_META_TITLE" => $value[1],
				    "SECTION_META_DESCRIPTION" => $value[2],
				);
  • Вопрос задан
  • 783 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы