CSV
Загрузка базы через .CSV позволяет пакетно менять или загружать с нуля товарную базу.
Cделайте резервную копию базы, чтобы вернуть все обратно, если результат не устроит:
База - Резервное копирование +
. Затем очистите тестовую базу База → SQL запрос к базе → ➕ Команда - Очистить базу
. Магазин готов к работе:Заходим в меню
База - Импорт
данных и выбираем нужные параметры импорта в Настройках:
Настройки импорта
Можно выбрать отдельные товары галкой, и по иконке ⚙️ - Экспортировать выбранные:

Тип данных - если вы грузите файл, в котором есть колонка каталогов, категории создадутся автоматически. Однако, можно загрузить их отдельно. Например, в выгрузке из Qparser есть 2 файла (каталоги и товары), которые нужно загружать по очереди.
Файл - выбираем файл на компьютере, или указываем URL поставщика; В Примерах 👉 мы подробно описали варианты получения файла: на основе родного файла или от поставщика.
Действие - создание или обновление;
CSV-разделитель - обычно, это точка с запятой;
Разделитель для характеристик - колонка, #, @, $. Забегая вперед, если характеристики в колонке, во вкладке Сопоставления полей выберем @Характеристика.

Пример с разным разделителем Характеристик
Разделитель значений характеристик - ; / \ - &

Пример с разным разделителем Значений характеристик
Обработка изображений - при включенной опции, размер, указанный в меню
Настройки - Изображения - Основные
, будет применяться к загруженным фото. Загрузка изображений - загрузка фото на сервер автоматически.
Альтернативным вариантом для большого количества товаров и обычного тарифа хостинга будет скачивание фото на локальный ПК и ручное копирование на сервер по FTP. Это возможно сделать на Q-parser, выбрав опцию скачать фото в архиве:


Тогда ставить галку Загрузка изображений не нужно.
Разделитель для изображений – если в Прайс-листе несколько фото к 1 товару, выберите, чем они разделены в файле CSV и поставьте соответствующую настройку.
Перед загрузкой, зайдите в меню
Настройки - Изображения
и проверьте настройки, по которым будут загружены фото:Включите опцию Сохранение в webp. Фото загрузятся в меньшем по весу формате
webp.
Не включайте запрет на фотогалерею.Нарезку и отображение в webp не поддерживает наш сервис аренды Shopbuilder.ru.
Кодировка текста - если кодировка выбрана неверно, ваши данные загрузятся в нечитаемых символах. Для файла в облаке выбирайте
UTF-8
. В остальных случаях, обычно используется ANSI (Windows 1251). Ключ обновления - нужен для обновления товаров. По умолчанию для обновления данных используются колонки
Id
или Артикул
, но можно использовать любое другое поле, например Наименование
. Проверка уникальности – если включена опция проверка уникальности и выбрано действие
Создание
, то перед созданием новых данных проверяется наличие данных в базе во избежании дублирования информации (проверяется артикул). После всех настроек, если столбцы в вашей прайс-листе имеют штатный названия, можно просто нажать Выполнить. Если столбцы отличаются, идем в закладку Соответствия полей. Нужно указать только те поля, которые мы хотим загрузить, остальные не заполняем:
Штатные названия колонок выгрузятся через меню Экспорт базы или через Qparser в формате PHPShop, соответствия полей в них делать не нужно.
Проставляем только нужные нам колонки.

Для автоматического создания структуры каталогов, используйте поле Путь каталога и укажите в нем полный путь формата "Каталог/Подкаталог1/Подкаталог2". При указании пути каталога, все отсутствующие каталоги будут созданы автоматически.
Если в прайс-листе характеристики – в колонках, нужно выбрать поле с собачкой: @Характеристика, и если в одной ячейке несколько значений характеристики, тоже выберите @Характеристика, а в Настройках укажите, какой стоит Разделитель значений характеристик: , ; /.

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

Для запуска загрузки, укажите параметры лимита строк и временной интервал, включите опцию
Умная загрузка
. Окно браузера закрывать не нужно, чтобы не прервать загрузку файла по временному интервалу. Лимиты строк на каждом хостинге и тарифе свои, но более 3000 строк ставить не рекомендуется, если только у вас не выделенный сервер или VPS.Нажимаем кнопку
Выполнить
- в правом верхнем углу. Ждем сообщения о загрузке. 
Например, поставщик дал вам файл в екселе - price-list-Romashka.xlsx. Расширение .xlsx нужно перевести в .csv - для этого откройте файл в Exсel,
Файл - Экспортировать - .csv
и сохраните файл. Получится такой файл - price-list-Romashka.csv. Прайс-лист можно выложить в облако и обновлять цены по расписанию. Для этого создайте документ в Google Sheets, скопируйте содержимое и сохраните. Не забудьте опубликовать файл:
Допустим, мы сделали резервную копию, почистили базу, и загружаем товары с нуля.
Заходим в меню
База - Импорт
данных и выбираем нужные параметры импорта в Настройках:Настройки
Файл - выбираем файл на компьютере, или указываем URL поставщика;
Действие - создание;
CSV-разделитель - точка с запятой;
Разделитель для характеристик - Колонка;
Разделитель значений хар-к - в нашем примере это точка с запятой;
Обработка изображений - при включенной опции, все, что выставлено в меню Настройки - Изображения - Основные, будет применено к уже загруженным фото. Это удобно для нарезки превью фото, не нужно создавать разные размеры, достаточно указать размер Тумбнейла и включить эту опцию, превью для товара будет создано автоматически.
Разделитель для изображений – в нашем примере это Точка с запятой.
Кодировка текста - поскольку наш файл загружен в облако, выбираем UTF-8.
Ключ обновления - т.к. мы загружаем с нуля, ключ нам не нужен.
Проверка уникальности – опция нам не нужна.
Далее идем в закладку Соответствия полей. Смотрим, что нам нужно для импорта в магазин. Решаем, что нам нужен Артикул, Заголовок, Цена, Цена поставщика, Описание, Изображение, Размер, Цвет. Проставляем остальные, только нужные нам колонки.

Сопоставляем поля
В нашем прайс-листе характеристики идут как колонки, значит выбираем @Характеристика, а в закладке Настроек укажем, что значения разделяются ;

Примеры разделения характеристик в файлах
Мы хотим по расписанию обновлять цены из данного файла. Заходим во вкладку Сохраненные настройки и вводим название. Настраиваем расписание: включаем модуль Задачи, создаем новую Задачу и в меню
Выбрать
- видим сохраненный импорт, указываем его и количество запусков в день.
Нужна для загрузки больших CSV файлов, без необходимости делить файл на части.

Для запуска загрузки, укажите параметры лимита строк и временной интервал, включите опцию
Умная загрузка
. Окно браузера закрывать не нужно, чтобы не прервать загрузку файла по временному интервалу. Лимиты строк на каждом хостинге и тарифе свои, но более 3000 строк ставить не рекомендуется, если только у вас не выделенный сервера или VPS.

Нажимаем кнопку
Выполнить
- в правом верхнем углу. Ждем сообщения о загрузке. Теперь можно проверить импорт - меню
Товары - Товары - Каталог1
, в него сразу попали товары из нашего Прайс-листа, с привязанными характеристиками. 🎉Принцип работы: сначала выгружаем .csv файл со структурой базы через
Экспорт данных
, добавляем свои товары и загружаем файл обратно через Импорт данных
.Скачайте 💾Образец файла выгрузки товара с характеристиками. Вы можете создать свой файл, выбрав нужные колонки 👇
Созд аем вручную каталоги, подкаталоги, и хотя бы 1 товар в каждом подкаталоге. Если будем заполнять в файле характеристики, то заводим их тоже вручную. Все значения характеристик (например, белый, красный, ..., или размер - 110, 122, ...) заранее создавать не нужно, они автоматически создадутся при загрузке.
После создания структуры, идем в раздел
База - Экспорт данных
, и указываем параметры выгрузки. См. раздел Экспорт данных ниже 👇.
Выбор колонок для экспорта
Скачиваем файл из
Экспорта данных
. Открываем скачанный файл: мы видим колонки, которые воспринимает PHPShop на основе их заголовков - заголовки редактировать нельзя. Заполните строки по столбцам. Управляющим полем при загрузке базы является - Код ID или Артик ул, по нему при загрузке идет поиск товара и обновление данных. Если в импорте выбрана опция
Действие - Создание
, то создается новый товар с ID, равным ID последнего добавленного товара, увеличенный на единицу.
Экспортируемые поля не забудьте выделить - они будут отмечены фоном, иначе они не выгрузятся в файл.
Выберите поля, которые будут выгружаться при:
Создании товаров
Обновлении товаров
Наименование, Цена 1, Описание, Характеристики, и добавьте поля, которые нужны именно вам.
Обязательно нужно либо поле id (товара), либо Артикул, + те поля, которые нужны именно вам.
CSV-разделитель: обычно это точка с запятой.
Разделитель для характеристик:
Через общее поле #
В виде отдельных колонок
Выбираем в качестве разделителя для характеристик символ
#
.
В файле
Характеристики
будут записаны в одну ячейку по каждому товару с разделителем /
между названием и значением характеристики и разделителем #
между самим характеристиками, если их несколько:Размер/44#Цвет/Бежевый
. Когда будете загружать файл обратно через
Импорт данных
, в качестве разделителя для характеристик не забудьте указать значение #
. При этом, новые значения характеристик будут созданы автоматически.Колонка автоматически считается названием характеристики, если первым символом в ее имени стоит
@
, например @Бренд
. Выбираем в поле "Экспортируемые поля" поля
Id
,Каталог
,Наименование
и @Характеристика
. ПолеКаталог
должно быть обязательно, иначе при обратной загрузке характеристики не найдут свой "Набор характеристик". Выбираем в качестве разделителя для характеристик значение Колонка
.
В выгруженном файле, в колонках с префиксом
@Характеристика
будут записаны все названия характеристик, а в соответствующих строках будут значения характеристики. Сколько у товара характеристик, столько и будет создано дополнительных колонок под каждую характеристику. Соблюдая это правило заполнения поля, внесите свои правки и загрузите файл обратно через раздел
Импорт данных
. Выбор разделителя значения не имеет. При этом новые значения характеристик будут созданы автоматически и привязаны к указанному каталогу в колонке Каталог
. Характеристики в отдельные колонки выгружаются только для одного каталога, первого товара в списке, чтобы не создавать много колонок. Для других товаров из других каталогов, колонки с характеристиками созданы не будут. Поэтому, выгружайте товары по каждому каталогу раздельно. Меню
Товары → Выбрать каталог → Выделить галочкой все товары → Экспортировать выбранные.
Полный путь изображений – опция нужна, если Экспорт данных используется для создания прайс-листа для клиентов, и в нем нужно указать полный путь к фото товаров (https://myphpshop.ru/UserFiles/Image/trial/primer-fotos.jpg). По умолчанию выгрузится путь /UserFiles/..

Разделитель для изображений – нужен, если у вас несколько фотографий к 1 товару.
GZIP сжатие – сжимает размер исходного экспорта, нужен для больших баз товаров.
Лимит стро к – ограничение строк в 1 csv файле.
Закладка Сохраненные настройки нужна для того, чтобы не проделывать заново эту процедуру:

Теперь можно нажать кнопку
Выполнить
и получить готовый файл для последующего внесения новых товаров. ✨Включите опцию
Сохранение в webp
в меню Настройки - Изображения. Фото загрузятся в меньшем по весу формате webp
. Нарезку и отображение в webp не поддерживает наш сервис аренды Shopbuilder.ru.
При импорте прайс-листа с полным URL изображений, фотографии будут автоматически загружены на сервер в одну папку /UserFiles/Image/.
Опция в меню
Настройки - Изображения
Сохранять изображения в папках по именам каталогов работать не будет, она работает только при ручном добавлении фото к товару в бек-офисе.Можно вручную загрузить фото товаров через любой ftp-клиент. В таком случае, в поле
Большое изображение
укажите путь к фото от корня сайта: /UserFiles/...
, если фото несколько, через запятую без пробела:
- 1.Большие картинки для карточки товара, предварительно подготовьте одного размера, желательно в одной пропорции. Загрузите фото на сервер в папку
/UserFiles/Image
, с помощью любого ftp-клиента (можно найти в Яндексе по слову "ftp-клиент").

2. В настройках импорта в меню
База - Импорт данных
включите опцию Обработка изображений
. Ваши фото будут обработаны, уменьшены согласно настройкам в меню Настройки - Изображения
. Через Импорт нельзя удалить в товарах старые фото, скрипт только добавит к товарам новые картинки, которые вы укажете в csv файле. Если нужно удалить фото у всех товаров, для последующей перезагрузки через csv, в меню
База -SQL запрос к базе
введите команду:TRUNCATE phpshop_foto;
update phpshop_products set pic_small="", pic_big="";

Для загрузки товаров через CSV из 1С, в настройках 1С-обработчика следует выбрать формат выгрузки
для версии PHPShop
. Если в .CSV файле из 1С не будет заполнено поле Каталог
, то загруженные товары попадут в папку Неопределенные товары - Загруженные
Вы можете вручную добавить нужные колонки в csv файл. Описание главных полей товаров:
Поле | Формат | Описание | Длина символов |
Id | Integer | ID товара | 11 |
Подробное описание | Text | Подробное описание товара | - |
Каталог | Integer | ID каталога товара | 11 |
Наименование | Varchar | Наименование товара | 255 |
Краткое описание | Text | Краткое описание товара | - |
Яндекс.Маркет | Enum | Флаг включения товаров для вывода в YML файл. (0 - нет, 1 - да) | 0 или 1 |
Вывод | Enum | Флаг включения товаров для вывода на сайте. (0 - нет, 1 - да) | 0 или 1 |
Артикул | Varchar | Артикул товара | 64 |
Спецпредложение | Enum | Флаг включения товаров в спецпредложение. (0 - нет, 1 - да) | 0 или 1 |
Сопутствующие товары | Varchar | Перечисление ID товаров через запятую для совместной продажи | 64 |
Приоритет | Integer | Приоритет вывода товара, сортировка. | 11 |
Новинка | Enum | Флаг включения товаров в новинки. (0 - нет, 1 - да) | 0 или 1 |
Заголовок | Varchar | Персональный титл (Titile) товара | 255 |
Маленькое изображение | Varchar | Изображение привью для товара (адрес файла изображения) | 255 |
Большое изображение | Varchar | Подробное изображение для товара (адрес файла изображения) | 255 |
Вес | float | Вес товара в граммах | - |
Дополнительные каталоги | Varchar | Перечисление ID каталогов через запятую для дополнительного вывода | 255 |
Цена 1 | float | Основная цена товара | - |
Цена 2 | float | Дополнительная цена товара | - |
Валюта | Int | ID валюты | 11 |
Единица измерения | Varchar | Наименование единицы измерения | 255 |
SEO ссылка | Varchar | SEO ссылка товара (/id/*******.html) | 255 |
В меню
База - Обслуживание - Проверка изображений
можно увидеть фото, которые присутствуют в товарах, но физически на сервере не существуют. Такое часто бывает, когда для наполнения магазина используют парсеры. Чтобы удалить битые картинки, просто выделите их галкой и нажмите
Удалить
..jpeg?alt=media&token=761a90e9-4c80-4f51-823e-cab868069a16)
Мы подробно описали в Блоге, как удалить лишние значения характеристик:
Last modified 2d ago