Comment on page
CSV
Загрузка базы через .CSV позволяет пакетно менять или загружать с нуля товарную базу.
Cделайте резервную копию базы, чтобы вернуть все обратно, если результат не устроит:
База - Резервное копирование +
. Затем очистите тестовую базу База → SQL запрос к базе → ➕ Команда - Очистить базу
. Магазин готов к работе.Импорт/обновление берет в обработку все колонки из СSV файла и загружает в магазин. Если колонки в файле имеют "родные" названия,
Cопоставление полей
делать не нужно - загрузятся все колонки файла. Если в файле много колонок, а нужно обновить только 1 колонку, например, характеристики, - удалите лишние колонки либо сделайте
Сопоставление полей
- укажите колонку с артикулом/id (ключ), и колонку с характеристикой. Тогда импорт возьмет только эти 2 колонки. В меню
База - Импорт
данных и выбираем нужные параметры импорта в Настройках:
Настройки импорта
Тип данных - если вы грузите файл, в котором есть колонка каталогов, категории создадутся автоматически. Однако, можно загрузить их отдельно. Например, в выгрузке из Qparser есть 2 файла (каталоги и товары), которые нужно загружать по очереди.
Файл - выбираем файл на компьютере, или указываем URL поставщика; В Примерах 👉 мы подробно описали варианты получения файла: на основе родного файла или от поставщика.
Действие - создание или обновление;
CSV-разделитель - обычно, это точка с запятой;
Разделитель для хар актеристик - колонка, #, @, $.
Сначала укажите настройку в менюНастройки - Основные - Настройка фильтра
, как грузить характеристики: Раздельно – создавать для каждой Группы свои характеристики, или грузить все в одну Общую группу – общие характеристики для всех товаров. Решите, как нужно вам.

Пример с разным разделителем Характеристик - Колонка и #

Забегая вперед, если характеристики в разных колонках, во вкладке
Сопоставление полей
выберем @Характеристика. 
Если в файле все характеристики в одной ячейке с разделителем #, во вкладке Сопоставление полей выберем Характеристики.
Разделитель значений характеристик - ; / \ - &

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


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

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

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

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

Теперь можно нажать кнопку
Выполнить
и получить готовый файл для последующего внесения новых товаров. ✨Проверьте настройки, которые выставлены в меню
Настройки - Изображения
- они будут применяться при загрузке фото.💡 Включите опцию
Сохранение в webp
- фото загрузятся в меньшем по весу формате webp
. При импорте прайс-листа с полным 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="";


Превью товаров создаются автоматически при загрузке, если опция включена в
Настройки - Изображения
и сами фото размещены на сервере до импорта. Если импорт запущен до размещения фото на сервере, превью не нарежется автоматически, тогда можно выполнить команду вручную. Зайдите в меню
База - SQL запрос к базе
и вставьте строку, нажмите Выполнить.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)
Пакетно можно выбрать товары галкой, нажать⚙️ - Редактировать выбранные
и назначить одинаковые значения к выбранным товарам.Если значения разные, нужно выгрузить эти товары, нажав⚙️- Экспортировать выбранные
, указать нужные поля, нажатьВыполнить
. В полученном файле отредактировать нужные колонки и загрузить обратно черезИмпорт данных
.
Задача: на сайте есть загруженные товары, нужно загрузить к ним фото.
Артикулы уникальные
❗️Артикулы с дублями
- 1.Для дозагрузки фото к товарам, в вашем csv файле нужны 2 колонки. В данном примере фото к одному товару несколько, url картинок идут через запятую.
Артикул* | Фото |
639509676 | https://photo.mebelion.ru/images/860792b07bc88b46b1399b4cc3994b3c.jpg,https://photo.mebelion.ru/images/06833ee73a0005e24977a4e7b0ef7813.jpg |
- 2.Перейдем в меню
База - Импорт данных - Товары
.
Выберем наш файл, действие
Обновление
. Включим:☑️ Обработка изображений
- при включенной опции, все настройки в меню Настройки - Изображения - Основные
, будут применяться к загружаемым фото. ☑️ Загрузка изображений
- включить загрузку фото на сервер по полному url в файле. Для большого количества товаров и обычного хостинга лучше скачать фото на ПК и вручную скопировать на сервер по FTP. Архив с фото делает сторонний парсер или наш парсер Price Loader, если выбрать выгрузку в локальный каталог. Тогда ставить галку Загрузка изображений не нужно, и в колонке
Фото
будет неполный путь к фото, который проставится к товарам.Разделитель для изображений
- в нашем примере запятая, можно оставить Автоматически.Ключ обновления
- Артикул.
- 2.На вкладке
Сопоставление полей
- укажем колонки Артикул и Фото:

- 3.Нажмем
Выполнить
. Проверим результат.
- 1.Найдем товары с дублирующимися артикулами. В меню
База - Обслуживание базы - Проверка товаров
проверим товары с повторяющими артикулами и устраним повторы.

- 2.Выполним те же действия, описанные в закладке Артикулы уникальные.
Задача: на сайте есть загруженные товары, нужно изменить их цены и наличие.
Порядок действий:
Артикулы уникальные
❗️Артикулы с дублями
Если вы обновляете данные через свой файл, переходите сразу к п.3.
- 1.Выгрузим товары: зайдем в каталог, отметим то вары галкой
⚙️- Экспортировать выбранные
. Выберем поля:
Артикул* | Цена1* | Склад* | Наименование |

- 2.Откроем csv и отредактируем его. Экспортируем измененный файл в csv.

- 3.Перейдем в меню
База - Импорт базы
. Выберем полученный файл, действиеОбновление
, выключим загрузку и обработку фото, кодировка та же, что выбрали при сохранении. НажмемВыполнить
.

- 4.Проверим, что данные изменились. В меню Товары - Товары внесем в поиск артикул - посмотрим на количество. Изменения обновились 🎉

- 1.Найдем товары с дублирующимися артикулами. В меню
База - Обслуживание базы - Проверка товаров
проверим товары с повторяющими артикулами и устраним повторы.

- 2.Выполним те же действия, описанные в закладке Артикулы уникальные.
Задача: нужно обновить характеристики у товаров.
Сначала проверим настройку в меню Настройки - Основные - настройка фильтра, как будут загружены характеристики: Раздельно – создавать для каждой Группы свои характеристики, или как Общую группу – общие характеристики для всех товаров.
Характеристики общие
Характеристики раздельные
- 1.Выгрузим товары через меню
База - Экспорт данных
, выберем Разделитель для характеристик - Колонка. Выберем поля:
Наименование* | Артикул* | Характеристики* |

- 2.В выгруженном файле делаем изменения, экспортируем в CSV, кодировка utf-8.
- 3.Загружаем полученный файл обратно через меню
База - Импорт даных
. Выбираем действие -Обновление
, разделитель для характеристикКолонка
, кодировкаutf-8
, нажимаемВыполнить
.

Для раздельных характеристик обязательным является поле
Каталог
. Т.к. при импорте характеристики обратно, будет проверяться ее принадлежность к каталогу. Выгружать нужно, кроме полей Артикул, Характеристики, еще Каталог. В остальном,
Задача: на старом сайта есть товары с характеристиками, которые нужно перенести на новый сайт. На новом сайте есть товары с теми же артикулами, но находятся они в других каталогах – структура сайта не совпадает.
Парсер выдаст характеристики только с привязкой к старой структуре сайта. Это значит, что к товару будет прописана характеристика и товар будет помещен в каталог, который указан на старом сайте. Нужно загрузить характеристики, но сохранить новую структуру каталогов.
Порядок действий:
- 1.На новом сайте выгрузим структуру каталогов. Меню
База - Экспорт данных
, выберем поля:
Артикул* | Наименование | Каталог* | Путь каталога |

- 2.На старом сайте парсим товары, получаем готовые файлы. Удаляем ненужные колонки, оставляем колонки Артикул, Каталог, Характеристики:
Артикул* | Наименование | Каталог* | Характеристики* |
Помним, что
Каталоги
здесь другие - при импорте на новый сайт, товары переместятся, но мы их вернем:) 
- 3.На новом сайте удаляем характеристики у товаров. Заходим в меню
База - SQL запрос к базе - Очистить все характеристики
. НажимаемВыполнить
.

- 4.На новом сайте загружаем характеристики.
Сначала выставляем настройку, как грузить характеристики: Раздельно – создавать для каждой Группы свои характеристики, или как Общую группу – общие характеристики для всех товаров. Решите, как нужно вам, в меню
Настройки - Основные - Настройка фильтра
. Затем в меню
База - Импорт данных
выберите ваш файл из п.2, Обновление, UTF-8, Выполн ить
.
- 5.После импорта, товары переместятся в ненужные каталоги. Чтобы вернуть прежнюю структуру сайта, перезапишем номера каталогов у товаров.
В меню
База - Импорт данных
выберем файл из п.1 и сделаем сопоставление - Артикул - Каталог:
🎉 Готово, в итоге мы перенесли характеристики со старого сайта, и сохранили новую структуру.
- Если после импорта вы видите много пустых характеристик, можно их удалить через меню в
Товары - Характеристики
⚙️ - Удалить неиспользуемые
.

Last modified 1mo ago