Добрый день!
Хочу перенести каталог из одной цмс в Битрикс, посоветуйте как лучше это технически реализовать.
Я поступаю следующим образом:
Через административный в битриксе я создаю инфоблок с нужными мне свойствами. Затем мне нужно добавить подразделы. Поскольку подразделов много и вручную их добавлять желания нету - то имеет смысл использовать API.
Структура базы данных в моей цмс следующая:
Таблица: Грузовики
Таблица: Автобусы
Таблица: Легковые автомобили
...
ТАБЛИЦА ГРУЗОВИКИ:
id, name, parent_id, is_folder
1 МАЗ 0 1
2 КРАЗ 0 1
3 УАЗ 0 1
4 Автомобиль МАЗ-346-201 1 0
5 Автомобиль МАЗ-346-202 1 0
6 Автомобиль МАЗ-346-202 1 0
7 Автомобиль КРАЗ-347-102 2 0
8 Автомобиль КРАЗ-348-103 11 0
9 Автомобиль КРАЗ-349-104 11 0
10 Самосвалы 3 1
11 Тягачи 3 1
12 Прицепы 3 1
13... и тд.
Я пишу скрипт переноса:
Первым делом я хочу сделать структуру каталогов инфоблока, такую же как в моей базе.
Делаю выборку из таблицы "Грузовики":
Но к сожалению так добавляются только корневые категории (у которых parent_id =0), а подкатегории не добавляются.
АПИ функция битрикса игнорирует то что я задаю явно ID категории, и присваивает всем категориям сови ID, в порядке возростания.
Как же тогда правильно перенести структуру каталогов?
Спасибо.
Хочу перенести каталог из одной цмс в Битрикс, посоветуйте как лучше это технически реализовать.
Я поступаю следующим образом:
Через административный в битриксе я создаю инфоблок с нужными мне свойствами. Затем мне нужно добавить подразделы. Поскольку подразделов много и вручную их добавлять желания нету - то имеет смысл использовать API.
Структура базы данных в моей цмс следующая:
Таблица: Грузовики
Таблица: Автобусы
Таблица: Легковые автомобили
...
ТАБЛИЦА ГРУЗОВИКИ:
id, name, parent_id, is_folder
1 МАЗ 0 1
2 КРАЗ 0 1
3 УАЗ 0 1
4 Автомобиль МАЗ-346-201 1 0
5 Автомобиль МАЗ-346-202 1 0
6 Автомобиль МАЗ-346-202 1 0
7 Автомобиль КРАЗ-347-102 2 0
8 Автомобиль КРАЗ-348-103 11 0
9 Автомобиль КРАЗ-349-104 11 0
10 Самосвалы 3 1
11 Тягачи 3 1
12 Прицепы 3 1
13... и тд.
Я пишу скрипт переноса:
Первым делом я хочу сделать структуру каталогов инфоблока, такую же как в моей базе.
Делаю выборку из таблицы "Грузовики":
Цитата |
---|
$rez = mysql_query ("SELECT * FROM camions WHERE is_folder=1"); $bs = new CIBlockSection; // Обьект категории while ( list($id, $name, $parent_id) = mysql_fetch_array($rez) ) { $arFields = Array( "ID" => $id, "ACTIVE" => "Y", "IBLOCK_SECTION_ID" => $parent_id, // ID группы родителя, если не задан то группа корневая. "IBLOCK_ID" => "4", //ID информационного блока (грузовики) "NAME" => $name ); echo "Элемент ".$parent_id."добавлен <br>"; $bs->Add($arFields); } |
Но к сожалению так добавляются только корневые категории (у которых parent_id =0), а подкатегории не добавляются.
АПИ функция битрикса игнорирует то что я задаю явно ID категории, и присваивает всем категориям сови ID, в порядке возростания.
Как же тогда правильно перенести структуру каталогов?
Спасибо.