# Тип файла

## <mark style="background-color:green;">CSV</mark>

<div data-full-width="true"><figure><img src="https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2Fcjuk6Yz4SHAyV9ajDkIj%2Fimage.png?alt=media&#x26;token=146fce0d-b681-43e7-8cdf-4648726bfe26" alt=""><figcaption><p>Настройки CSV</p></figcaption></figure></div>

* ***Кодировка*** *-* Выберите кодировку файла. Если кодировка не соответствует UTF-8, то для корректного импорта файла необходимо создать активную константу ALT\_SITE\_LOCALE, которая должна содержать альтернативную локаль. Например, если импорт ведется из CSV-файла в кодировке Windows-1251, то указанная константа должна иметь в своем значении наименование локали для этой кодировки, чаще всего это ru\_RU.CP1251.
* ***Разделитель** - р*азделитель для столбцов (например: Запятая, Точка с запятой при сохранении из Microsoft Excel® и др), укажите символ разделителя в поле
* ***Ограничитель** -* ограничитель для полей (например: Кавычки и др), укажите символ ограничителя
* ***Кол-во проп. строк** - число указывающее сколько нужно пропустить строк сверху (например если сверху есть название полей)*

### Настройка полей импорта

При настройке полей для импорта вы должны сопоставить номер столбца в файле с полем в которое выгружать (в файле столбец **А** → в админке **Название товара \[name]**), для вашего удобства порядок лучше соблюдать, но это не обязательно, пустые столбцы можно пропускать

* номер столбца в файле, диапазон от А до AZ
* Поле в которое будут записываться данные из столбца, стандартные поля товара и его доп. свойства (выбор поля идет автокомплитом, по названию и его названию из таблицы базы, так же по ID и XML тегу для доп. свойств)
* Поле для родителського товара (mod\_id - рекомендуем, marking, guid, name)
* Домен к image - укажите если в файле путь к изображениям не указан
* <img src="https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2FeQ0oq5i6zHoc6CbXCvxr%2Fimage.png?alt=media&#x26;token=2ce634cd-d151-4ee2-8da9-03685968fd6b" alt="" data-size="line">параметр обновления данных выбранного поля для уже существующих товаров, если вкл. то будет обновлять (например можно включить чтобы обновлял только остатки и цены, а название и описание не перезаписывал)
* ![](https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2FfhFXaOzOIPKJBk7ppz4B%2Fimage.png?alt=media\&token=115900a4-d003-4180-a3b9-84954d76cbea) поставьте галочку если загружаете модификации и нужно из них создать род. товар, тогда текущие данные будут загружаться для родительского товара

## <mark style="background-color:yellow;">XLS/XLSX</mark>

<div data-full-width="true"><figure><img src="https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2FV31vCMGESp0cGmxK2Oxg%2Fimage.png?alt=media&#x26;token=ef20dc6e-3de9-4a90-a98f-4fa996ca896a" alt=""><figcaption><p>Настройки XLS/XLSX</p></figcaption></figure></div>

* ***Кол-во проп. строк** - число указывающее сколько нужно пропустить строк сверху (например если сверху есть название полей)*
* ***Номер листа** - в Excel файле может находится несколько листов с данными, можно указать какой именно загружать (от 1 до 99) или загружать все (-1)*

### Настройка полей импорта

При настройке полей для импорта вы должны сопоставить номер столбца в файле с полем в которое выгружать (в файле столбец **А** → в админке **Название товара \[name]**), для вашего удобства порядок лучше соблюдать, но это не обязательно, пустые столбцы можно пропускать

* номер столбца в файле, диапазон от А до AZ
* Поле в которое будут записываться данные из столбца, стандартные поля товара и его доп. свойства (выбор поля идет автокомплитом, по названию и его названию из таблицы базы, так же по ID и XML тегу для доп. свойств)
* Поле для родителського товара (mod\_id - рекомендуем, marking, guid, name)
* Домен к image - укажите если в файле путь к изображениям не указан
* <img src="https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2FeQ0oq5i6zHoc6CbXCvxr%2Fimage.png?alt=media&#x26;token=2ce634cd-d151-4ee2-8da9-03685968fd6b" alt="" data-size="line">параметр обновления данных выбранного поля для уже существующих товаров, если вкл. то будет обновлять (например можно включить чтобы обновлял только остатки и цены, а название и описание не перезаписывал)
* ![](https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2FfhFXaOzOIPKJBk7ppz4B%2Fimage.png?alt=media\&token=115900a4-d003-4180-a3b9-84954d76cbea) поставьте галочку если загружаете модификации и нужно из них создать род. товар, тогда текущие данные будут загружаться для родительского товара

## <mark style="background-color:red;">XML</mark>

<div data-full-width="true"><figure><img src="https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2F5s6KOl1V4cQvlEhwyQru%2Fimage.png?alt=media&#x26;token=8e9bef9b-5c23-4edf-80f8-1c87f5c0b2ca" alt=""><figcaption><p>Настройки XML</p></figcaption></figure></div>

* ***Загружать группы*** - загружать группы из файла
* ***Путь до групп***&#xB2; - `xpath` *путь до тега групп (например* `shop/categories/category`*)*
* ***Путь до товаров***&#xB2; *-* `xpath` *путь до тега товара (например* `shop/offers/offer`*)*
* ***Путь до модификаций***&#xB2; *-* `xpath` *путь до тега внутри товара (например* `variant`*)*
* ***Путь названия свойства***&#xB2; *-* `xpath` *название тега (по умолчанию* `@name`*)*
* ***Путь значения свойства***&#xB2; *-* `xpath` *название тега (по умолчанию пусто)*

{% hint style="info" %}
²XPath реализовывает навигацию по DOM в XML [подробнее](https://ru.wikipedia.org/wiki/XPath)
{% endhint %}

### Настройка полей импорта

При настройке полей для импорта вы должны сопоставить XML тэг в файле с полем в которое выгружать (тег в файле`name` → в админке **Название товара \[name]**), для вашего удобства порядок лучше соблюдать, но это не обязательно

* xpath пути тега из XML (например `name`)
* Поле в которое будут записываться данные из столбца, стандартные поля товара и его доп. свойства (выбор поля идет автокомплитом, по названию и его названию из таблицы базы, так же по ID и XML тегу для доп. свойств)
* Поле для родителського товара (mod\_id - рекомендуем, marking, guid, name)
* Домен к image - укажите если в файле путь к изображениям не указан
* <img src="https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2FeQ0oq5i6zHoc6CbXCvxr%2Fimage.png?alt=media&#x26;token=2ce634cd-d151-4ee2-8da9-03685968fd6b" alt="" data-size="line">параметр обновления данных выбранного поля для уже существующих товаров, если вкл. то будет обновлять (например можно включить чтобы обновлял только остатки и цены, а название и описание не перезаписывал)
* ![](https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2FfhFXaOzOIPKJBk7ppz4B%2Fimage.png?alt=media\&token=115900a4-d003-4180-a3b9-84954d76cbea) поставьте галочку если загружаете модификации и нужно из них создать род. товар, тогда текущие данные будут загружаться для родительского товара

## <mark style="background-color:blue;">HTML</mark>

<div data-full-width="true"><figure><img src="https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2F591653AceMJjakjrTTZi%2Fimage.png?alt=media&#x26;token=fc4d2b52-1f3e-4219-a53d-3f825139984d" alt=""><figcaption><p>Настройки HTML</p></figcaption></figure></div>

* **Путь к ссылкам на товары**²  - `xpath`, например `//a[@class = 'product-item' and @href]/@href)`
* **Маска пагинации** - например `?page=%d`
* **Путь к номеру последней страницы**² - `xpath`, например `//ul[@class = 'pagination']/a[position() = last()]/text())`
* **Путь названия свойства**² - `xpath`, например `//*[@class = 'name']/text())`
* **Путь значения свойства**² - `xpath`, например `//*[@class = 'value']/text())`

{% hint style="info" %}
²XPath реализовывает навигацию по DOM в HTML [подробнее](https://habr.com/ru/articles/753332/)
{% endhint %}

### Настройка полей импорта

При настройке полей для импорта вы должны сопоставить данные html с полем в которое выгружать (данные тэга `//h1/text()` → в админке **Название товара \[name]**), для вашего удобства порядок лучше соблюдать, но это не обязательно

* xpath пути тега из XML (например `//h1/text()`)
* Поле в которое будут записываться данные из столбца, стандартные поля товара и его доп. свойства (выбор поля идет автокомплитом, по названию и его названию из таблицы базы, так же по ID и XML тегу для доп. свойств)
* Поле для родителського товара (mod\_id - рекомендуем, marking, guid, name)
* Домен к image - укажите если в файле путь к изображениям не указан
* <img src="https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2FeQ0oq5i6zHoc6CbXCvxr%2Fimage.png?alt=media&#x26;token=2ce634cd-d151-4ee2-8da9-03685968fd6b" alt="" data-size="line">параметр обновления данных выбранного поля для уже существующих товаров, если вкл. то будет обновлять (например можно включить чтобы обновлял только остатки и цены, а название и описание не перезаписывал)
* ![](https://2369838666-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mj-gwbYdQWRhuB0jULI%2Fuploads%2FfhFXaOzOIPKJBk7ppz4B%2Fimage.png?alt=media\&token=115900a4-d003-4180-a3b9-84954d76cbea) поставьте галочку если загружаете модификации и нужно из них создать род. товар, тогда текущие данные будут загружаться для родительского товара

## v2 XLS/XLSX

скоро ...

## CommerceML

скоро ...
