Документация для разработчиков
Темная тема

Шаблоны импорта (для разработчиков)

Шаблоны импорта

Шаблоны должны быть расположены в каталоге /bitrix/php_interface/include/catalog_import/. Предустановленные шаблоны содержат только подключение реальных скриптов. Пользовательские шаблоны должны содержать весь код, который необходим для импорта. В качестве шаблонов система предлагает все файлы этого каталога, оканчивающиеся на _run.php. Если в этом каталоге находится файл с таким же именем, но оканчивающийся на _setup.php, то система считает этот файл файлом дополнительных настроек (мастером импорта) для соответствующего шаблона импорта.

Если в начале шаблона импорта находится тег <title> (возможно, в PHP комментариях), то содержимое этого тега принимается за название шаблона импорта. В противном случае названием шаблона становится имя его файла.

Вы можете добавить в каталог /bitrix/php_interface/include/catalog_import/ любое количество произвольных шаблонов импорта.

Шаблон импорта

Шаблон импорта представляет собой обычный PHP скрипт, в котором нет вывода данных. В этом скрипте доступны все стандартные переменные, а так же все переменные, которые установлены в мастере импорта.

С помощью переменной $URL_DATA_FILE определяется путь к файлу с данными для импорта.

Шаблон импорта может установить переменную $strImportErrorMessage, содержащую текстовое описание ошибок, которые произошли при выполнении импорта. В этом случае система будет интерпретировать импорт как неудачный и выведет содержимое переменной $strImportErrorMessage на экран.

Пример шаблона импорта

В качестве примера шаблона импорта вы можете ознакомиться с шаблоном импорта Import CSV (new), который доступен в файле/bitrix/modules/catalog/load_import/csv_new_run.php.

Важно! Изменять код этого файла нельзя, вы можете его скопировать в собственный файл с шаблоном импорта.

Мастер импорта

Мастер импорта служит для задания дополнительных параметров импорта (выбор типа инфоблока, указание действия с отсутствующими товарами в файле и т.п.). Если дополнительные параметры шаблону импорта не нужны, то мастер импорта создавать не обязательно.

Мастер импорта может быть многошаговым. В этом случае следует использовать переменную $STEP, содержащую текущий шаг мастера. На следующий шаг переменная $STEP должна переходить с увеличенным соответственно значением.

На последнем шаге переменная $FINITE должна быть установлена в значение true. Система воспринимает эту ситуацию как конец мастера импорта и передает управление на шаблон импорта или на сохранение профиля.

После окончания мастера импорта должна быть доступна переменная $SETUP_FIELDS_LIST, содержащая список имен переменных, устанавливаемых мастером импорта. Имена переменных должны быть разделены запятыми.

Если в качестве действия было вызвано создание профиля импорта (т.е. переменная $ACTION равна IMPORT_SETUP), то после окончания мастера импорта должна быть доступна переменная $SETUP_PROFILE_NAME, содержащая имя создаваемого профиля.

Пример мастера импорта

Аналогично, в качестве примера мастера импорта вы можете ознакомиться с мастером импорта Import CSV (new), который доступен в файле /bitrix/modules/catalog/load_import/csv_new_setup.php.

Важно! Изменять код этого файла нельзя, вы можете его скопировать в собственный файл с мастером импорта.



© «Битрикс», 2001-2024, «1С-Битрикс», 2024