Excel

Загрузка базы через файлы CSV (YML, XLS, XLSX) позволяет пакетно менять или загружать с нуля товарную базу.

Поддерживается загрузка файлов форматов YML, XLS, XLSX, при этом файл будет автоматически переведен в рекомендованный формат и загружен как обычный CSV файл.

В ексель файле не должно быть лишних строк, шапки, описания сверху таблицы. Перед загрузкой необходимо удалить все лишнее. Если колонки называются не штатными заголовками, нужно сделать сопоставление полей. Об это подробно ниже:

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

⤵️Импорт данных

Импорт/обновление берет в обработку все колонки из СSV файла и загружает в магазин. Если колонки в файле имеют "родные" названия, Cопоставление полей делать не нужно - загрузятся все колонки файла.

Если в файле много колонок, а нужно обновить только 1 колонку, например, характеристики, - удалите лишние колонки либо сделайте Сопоставление полей - укажите колонку с артикулом/id (ключ), и колонку с характеристикой. Тогда импорт возьмет только эти 2 колонки.

В меню База - Импорт данных и выбираем нужные параметры импорта в Настройках:

Вкладка Настройки

Тип данных - если вы грузите файл, в котором есть колонка каталогов, категории создадутся автоматически. Однако, можно загрузить их отдельно. Например, в выгрузке из Qparser есть 2 файла (каталоги и товары), которые нужно загружать по очереди.

Файл - выбираем файл на компьютере, или указываем URL поставщика; В Примерах 👉 мы подробно описали варианты получения файла: на основе родного файла или от поставщика.

Действие - создание или обновление;

CSV-разделитель - обычно, это точка с запятой;

Разделитель для характеристик - колонка, #, @, $.

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

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

☑️ Обработка изображений - при включенной опции, размер, указанный в меню Настройки - Изображения - Основные, будет применяться к загружаемым фото. Это удобно для нарезки превью фото, не нужно создавать разные размеры, достаточно указать размер Тумбнейла и включить эту опцию, превью для товара будет создано автоматически. Также можно включить переформатирование в для экономии места на сервере. Для обработки уже загруженных фото используйте модуль Пакетная обработка фото.

☑️ Загрузка изображений - включить загрузку фото на сервер по .

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

...или с помощью нашей утилиты Price Loader для Windows, указав выгрузку в локальный каталог:

Тогда ставить галку Загрузка изображений не нужно.

Разделитель для изображений – если в Прайс-листе несколько фото к 1 товару, выберите, чем они разделены в файле CSV и поставьте соответствующую настройку.

Перед загрузкой, зайдите в меню Настройки - Изображения и проверьте настройки, по которым будут загружены фото:

Нарезку и отображение в webp не поддерживает наш сервис аренды Shopbuilder.ru.

Кодировка текста - если кодировка выбрана неверно, ваши данные загрузятся в нечитаемых символах. Для файла в облаке выбирайте UTF-8. В остальных случаях, обычно, используется ANSI (Windows 1251).

Ключ обновления - нужен только для обновления товаров. По умолчанию, для обновления данных используются колонки Id или Артикул, но можно использовать любое другое поле, например Наименование, или .

Проверка уникальности – если включена опция проверка уникальности и выбрано действие Создание, то перед созданием новых данных проверяется наличие данных в базе во избежании дублирования информации (проверяется артикул).

Выявить дубли уже загруженных артикулов можно в меню База - Обслуживание базы - проверка товаров.

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

Вкладка Сопоставление полей

Штатные названия колонок выгрузятся через меню Экспорт базы или через Qparser в формате PHPShop, соответствия полей в них делать не нужно.

Проставляем только нужные нам колонки.

Если в прайс-листе характеристики в колонках, нужно выбрать поле с собачкой: @Характеристика. Если в колонках в одной ячейке несколько значений характеристики, тоже выберите @Характеристика, а в Настройках укажите, какой стоит Разделитель значений характеристик: , ; /.

Если все характеристики в одной колонке - так выгружает Q-parser или встроенный экспорт данных, выберите поле Характеристики.

Вкладка Сохраненные настройки

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

Вкладка Автоматизация

Включена по умолчанию для поэтапной обработки файла по строкам, можно указать, сколько за 1 раз обрабатывать строк. При загрузке только текстовых данных без загрузки фото по url, опцию можно выключить – будет быстрее.

Кнопка Выполнить

Нажимаем кнопку Выполнить - в правом верхнем углу. Ждем сообщения о загрузке.

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

Пример Загрузки прайс-листа поставщика

Например, поставщик дал вам файл в Екселе - price-list-Romashka.xlsx. Расширение .xlsx рекомендуется перевести в .csv (для отсечения лишних данных и увеличения скорости загрузки) - для этого откройте файл в Exсel, Файл - Экспортировать - .csv и сохраните файл. Получится такой файл - price-list-Romashka.csv. Прайс-лист можно выложить в облако и обновлять цены по расписанию. Для этого создайте документ в Google Sheets, скопируйте содержимое и сохраните. Не забудьте опубликовать файл:

Допустим, мы сделали резервную копию, почистили базу, и загружаем товары с нуля.

Заходим в меню База - Импорт данных и выбираем нужные параметры импорта в Настройках:

Вкладка Настройки

Файл - выбираем файл на компьютере, или указываем URL поставщика;

Действие - создание;

CSV-разделитель - точка с запятой;

Разделитель для характеристик - Колонка;

Разделитель значений хар-к - в нашем примере это точка с запятой;

Обработка изображений - при включенной опции, все, что выставлено в меню Настройки - Изображения - Основные, будет применено к загружаемым фото. Это удобно для нарезки превью фото, не нужно создавать разные размеры, достаточно указать размер Тумбнейла и включить эту опцию, превью для товара будет создано автоматически. Также можно включить переформатирование в для экономии места на сервере. Для обработки уже загруженных фото используйте модуль Пакетная обработка фото.

Разделитель для изображений – в нашем примере это Точка с запятой.

Кодировка текста - поскольку наш файл загружен в облако, выбираем UTF-8.

Ключ обновления - т.к. мы загружаем с нуля, ключ нам не нужен.

Проверка уникальности – опция нам не нужна.

Далее

⎘ Пример загрузки csv-файлов из Q-parser

Пример загрузки на основе "родного" экспортного файла

Принцип работы: сначала выгружаем .csv файл со структурой базы через Экспорт данных, добавляем свои товары и загружаем файл обратно через Импорт данных.

Скачайте 💾Образец файла с характеристиками в 1 ячейке, или 💾Образец файла с характеристиками в колонках.

Вы можете создать свой файл:

  1. Отметьте товары галкой, нажмите на ⚙️ - Экспортировать выбранные.

  2. Выберите поля, которые нужно выгрузить.

  3. Укажите, как выгрузить характеристики - .

  4. Нажмите Выполнить и скачайте полученный файл.

1. Создаем вручную в админпанели структуру каталогов и по одному товару в каждом каталоге

Создаем вручную каталоги, подкаталоги, и хотя бы 1 товар в каждом подкаталоге. Если будем заполнять в файле характеристики, то заводим их тоже вручную. Все значения характеристик (например, белый, красный, ..., или размер - 110, 122, ...) заранее создавать не нужно, они автоматически создадутся при загрузке.

2. В экспорте данных выбираем, что нужно выгрузить

После создания структуры, идем в раздел База - Экспорт данных, и указываем параметры выгрузки. См. раздел Экспорт данных ниже 👇.

3. Заполняем .csv файл своими данными

Скачиваем файл из Экспорта данных. Открываем скачанный файл: мы видим колонки, которые воспринимает PHPShop на основе их заголовков - заголовки редактировать нельзя. Заполните строки по столбцам.

Управляющим полем при загрузке базы является - Код ID или Артикул, по нему при загрузке идет поиск товара и обновление данных. Если в импорте выбрана опция Действие - Создание, то создается новый товар с ID, равным ID последнего добавленного товара, увеличенный на единицу.

Смотрите также Пакетное редактирование базы

⤴️Экспорт данных

Выберите поля, которые будут выгружаться при:

Наименование, Цена 1, Описание, Характеристики, и добавьте поля, которые нужны именно вам.

CSV-разделитель: обычно это точка с запятой.

Разделитель для характеристик:

Колонка автоматически считается названием характеристики, если первым символом в ее имени стоит @, например @Бренд.

Выбираем в поле "Экспортируемые поля" поля Id,Каталог,Наименование и @Характеристика.

Поле Каталог должно быть обязательно, если характеристик, иначе при обратной загрузке, характеристики не найдут свой "Набор характеристик".

Выбираем в качестве разделителя для характеристик значение Колонка.

В выгруженном файле, в колонках с префиксом @Характеристика будут записаны все названия характеристик, а в соответствующих строках будут значения характеристики. Сколько у товара характеристик, столько и будет создано дополнительных колонок под каждую характеристику.

Соблюдая это правило заполнения поля, внесите свои правки и загрузите файл обратно через раздел Импорт данных. Выбор разделителя значения не имеет. При этом новые значения характеристик будут созданы автоматически и привязаны к указанному каталогу в колонке Каталог.

Полный путь изображений – опция нужна, если Экспорт данных используется для создания прайс-листа для клиентов, и в нем нужно указать полный путь к фото товаров (https://myphpshop.ru/UserFiles/Image/trial/primer-fotos.jpg). По умолчанию выгрузится путь от /UserFiles/.

Разделитель для изображений – нужен, если у вас несколько фотографий к 1 товару.

GZIP сжатие – сжимает размер исходного экспорта, нужен для больших баз товаров.

Формат файла - выбор формата файла выгрузки Excel (CSV), Яндекс Маркет (YML), Google Merchant (RSS) или 1С (CML).

Кодировка текста - выбор кодировки ANSI (локальная кодировкам по умолчанию) или UTF-8 (международная кодировка).

Лимит строк – ограничение строк в одном файле.

Закладка Сохраненные настройки нужна для того, чтобы не проделывать заново эту процедуру:

Теперь можно нажать кнопку Выполнить и получить готовый файл для последующего внесения новых товаров. ✨

Выбор полей для экспорта актуален только для сохранения файла в формате Excel (CSV), для всех остальных форматов (YML, RSS, CML) поля подставляются автоматически, согласно правилам спецификаций формата выгрузки.

Экспорт выбранных

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

Экспорт по расписанию

Для экспорта данных по расписанию следует настроить параметра экспорта и сохранить эту настройку. Сохраненную настройку можно использовать в модуле Задачи и настроить в нем периодичность выполнения экспорта.

Постоянная ссылка на файл выгрузки после первого удачного выполнения задачи появится в настройках созданной задачи.


Пакетная загрузка фото на сервер (csv)

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

💡 Включите опцию Сохранение в webp - фото загрузятся в меньшем по весу .

Автоматически по URL

При импорте прайс-листа с полным URL изображений, фотографии будут автоматически загружены на сервер в одну папку /UserFiles/Image/.

Опция в меню Настройки - Изображения Сохранять изображения в папках по именам каталогов работать не будет, она работает только при ручном добавлении фото к товару в бек-офисе.

Вручную по FTP

Можно вручную загрузить фото товаров через любой 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

Загрузка фото из 1С (csv)

Для загрузки товаров через 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

pageРабота с изображениями

Удаление битых картинок из базы

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

Такое часто бывает, когда для наполнения магазина используют парсеры. Чтобы удалить битые картинки, просто выделите их галкой и нажмите Удалить.

Пакетное редактирование базы

Пакетно можно выбрать товары галкой, нажать ⚙️ - Редактировать выбранные и назначить одинаковые значения к выбранным товарам.

Если значения разные, нужно выгрузить эти товары, нажав ⚙️- Экспортировать выбранные, указать нужные поля, нажать Выполнить. В полученном файле отредактировать нужные колонки и загрузить обратно через Импорт данных.

Дозагрузка фото к существующим товарам по артикулу

Задача: на сайте есть загруженные товары, нужно загрузить к ним фото.

  1. Для дозагрузки фото к товарам, в вашем csv файле нужны 2 колонки. В данном примере фото к одному товару несколько, url картинок идут через запятую.

Артикул*

Фото

639509676

https://photo.mebelion.ru/images/860792b07bc88b46b1399b4cc3994b3c.jpg,https://photo.mebelion.ru/images/06833ee73a0005e24977a4e7b0ef7813.jpg

  1. Перейдем в меню База - Импорт данных - Товары.

Выберем наш файл, действие Обновление. Включим:

☑️ Обработка изображений - при включенной опции, все настройки в меню Настройки - Изображения - Основные, будут применяться к загружаемым фото.

☑️ Загрузка изображений - включить загрузку фото на сервер по полному .

Для большого количества товаров и обычного хостинга лучше скачать фото на ПК и вручную скопировать на сервер по FTP. Архив с фото делает или наш парсер Price Loader, если выбрать . Тогда ставить галку Загрузка изображений не нужно, и в колонке Фото будет , который проставится к товарам.

Разделитель для изображений - в нашем примере запятая, можно оставить Автоматически.

Ключ обновления - Артикул.

  1. На вкладке Сопоставление полей - укажем колонки Артикул и Фото:

  1. Нажмем Выполнить. Проверим результат.

Для корректировки/обработки уже загруженных фото используйте модуль Пакетная обработка фото.

Обновление цен, остатков товаров

Задача: на сайте есть загруженные товары, нужно изменить их цены и наличие.

Порядок действий:

Если вы обновляете данные через свой файл, переходите сразу к п.3.

  1. Выгрузим товары: зайдем в каталог, отметим товары галкой ⚙️- Экспортировать выбранные. Выберем поля:

Артикул*

Цена1*

Склад*

Наименование

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

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

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

Обновление характеристик

Задача: нужно обновить характеристики у товаров.

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

  1. Выгрузим товары через меню База - Экспорт данных, выберем Разделитель для характеристик - Колонка. Выберем поля:

Наименование*

Артикул*

Характеристики*

  1. В выгруженном файле делаем изменения, экспортируем в CSV, кодировка utf-8.

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

Обновление товаров по артикулу из сайта с другой структурой

Задача: на старом сайта есть товары с характеристиками, которые нужно перенести на новый сайт. На новом сайте есть товары с теми же артикулами, но находятся они в других каталогах – структура сайта не совпадает.

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

Порядок действий:

  1. На новом сайте выгрузим структуру каталогов. Меню База - Экспорт данных, выберем поля:

Артикул*

Наименование

Каталог*

Путь каталога

  1. На старом сайте парсим товары, получаем готовые файлы. Удаляем ненужные колонки, оставляем колонки Артикул, Каталог, Характеристики:

Артикул*

Наименование

Каталог*

Характеристики*

Помним, что Каталоги здесь другие - при импорте на новый сайт, товары переместятся, но мы их вернем:)

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

  1. На новом сайте загружаем характеристики.

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

Затем в меню База - Импорт данных выберите ваш файл из п.2, Обновление, UTF-8, Выполнить.

  1. После импорта, товары переместятся в ненужные каталоги. Чтобы вернуть прежнюю структуру сайта, перезапишем номера каталогов у товаров.

В меню База - Импорт данных выберем файл из п.1 и сделаем сопоставление - Артикул - Каталог:

🎉 Готово, в итоге мы перенесли характеристики со старого сайта, и сохранили новую структуру.

Удаление пустых характеристик

  • Если после импорта вы видите много пустых характеристик, можно их удалить через меню в Товары - Характеристики ⚙️ - Удалить неиспользуемые.

Мы подробно описали в Блоге, как удалить лишние значения характеристик.

Last updated