Импорт товаров в формате CSV. Часть 1
От автора: приветствую Вас дорогой друг. Интернет магазины в данное время очень популярны, а значит достаточно часто веб-мастера, занимаются разработкой сайтов именно этого типа. При этом любой магазин, конечно же, предполагает публикацию множества различных товаров, добавить которые вручную порой становится непосильной задачей. Потому как ее выполнение, требует огромного количества времени.
Поэтому если необходимо добавить большое количество товаров владельцы магазинов используют специальные скрипты по импорту, которые в считанные секунды или же минуты добавят в магазин несколько тысяч товаров. Конечно, разрабатываемый магазин должен поддерживать скрипты подобного рода.
Для всех современных CMS, которые используются для создания магазинов, написаны дополнительные модули или расширения по импорту/экспорту товаров, которые могут быть как встроенными, так и поставляться отдельно на платной или бесплатной основе. Но для самописного движка интернет магазина вышеуказанный функционал придется описывать самостоятельно. Поэтому в данном уроке мы с Вами напишем небольшое веб-приложение, которое реализует импорт товаров CSV.
Бесплатный курс по PHP программированию
Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC
В курсе 39 уроков | 15 часов видео | исходники для каждого урока
Конечно, создаваемый скрипт будет не сложен и по сути не будет привязываться к реальному движку, потому как у каждого из Вас различные задачи и показать создание универсального инструмента в рамках парочки уроков просто невозможно. Я хотел бы рассмотреть принцип импорта товаров, то есть, что бы Вы увидели, как это можно сделать, и возможно это поможет Вам в решении некоторой реальной задачи.
Итак, в данном уроке мы будем рассматривать импорт товаров в формате CSV, то есть вся информация о добавляемых товарах будет содержаться в специальном файле с расширением .csv.
Формат CSV – это простой текстовый формат, предназначенный для представления различных табличных данных. То есть благодаря ему, сложная таблица может быть сохранена в виде простого текста, с специфическим форматированием. CSV – это аббревиатура, образованная английскими словами — Comma-Separated Values — значения, разделённые запятыми. Синтаксис указанного формата предполагает, что каждая строка файла – это одна строка таблицы. Данные, которые хранятся в колонках, разделены друг от друга знаком запятой (,).
Но согласитесь, что запятая – это символ, который конечно же может встречаться в тексте, в качестве знака пунктуации, поэтому на практике, часто используют в качестве разделителей другие знаки, к примеру – точка с запятой (;), что собственно мы с Вами и сделаем. В этом случае, правильно бы назвать формат – DSV (delimiter-separated values — значения разделённые разделителем), но на сегодняшний день под понятием CSV – понимают набор определенных текстовых значений разделенных определенным разделителем.
Как было сказано выше, создавать скрипт мы будем с чистого листа и по сути реализуем считывание данных документа CSV и запись полученной информации в таблицу “products” базы данных.
Структура таблицы следующая:
Формат CSV очень легко получить, используя в качестве исходной таблицы – таблицу Microsoft Excel. Конечно, Вы можете спросить – зачем преобразовывать таблицу в специальный формат, если можно осуществить импорт, читая содержимое каждой ячейки таблицы. И по большому счету — Да, мы можем это сделать. Но при этом придется использовать дополнительную библиотеку по работе с документами Excel. В свою очередь формат CSV – простой текстовый формат, который легко и быстро читается языком PHP, без каких либо дополнительных инструментов.
Теперь предположим, что поставщик передал нам следующий документ с информацией о доступных товарах:
Как Вы видите каждая строка таблицы – это отдельный товар. При этом в колонках, располагается информация, которая должна быть сохранена в соответствующие поля таблицы “products”.
Теперь давайте преобразуем данную таблицу в формат CSV, для этого переходим в меню “Файл”, далее выбираем пункт “Сохранить как”.
Затем при сохранении выбираем формат CSV (разделители-запятые).
Обратите внимание, что файл будет сохранен в кодировке Windows-1251, поэтому для дальнейшей работы необходимо сменить кодировку на UTF-8. Теперь можно приступать к созданию функционала будущего скрипта.
В данной части мы с Вами реализуем общую файловую структуру приложения, создадим глобальную точку входа и функцию автоматической загрузки классов, а так же опишем класс, который выполнит чтение документа формата CSV и вернет полученную информацию в виде многомерного массива, работать с которым мы будем на следующем уроке. Соответственно, как реализовать вышеуказанный функционал, детально показано в видео версии текущего урока.
Поэтому текстовая версия завершена, а значит жду Вас в видео. Всего Вам доброго и удачного кодирования!!!
Бесплатный курс по PHP программированию
Освойте курс и узнайте, как создать динамичный сайт на PHP и MySQL с полного нуля, используя модель MVC
В курсе 39 уроков | 15 часов видео | исходники для каждого урока
Получить курс сейчас!Разработка веб-приложения на PHP
Создайте веб-приложение на PHP на примере приема платежей на сайте
СмотретьИмпорт товаров из CSV-файла (Excel) — Webasyst
С помощью CSV-файла можно быстро импортировать в интернет-магазин сразу много товаров и категорий. Создавайте CSV-файлы в табличных программах, например: OpenOffice/LibreOffice Calc, Microsoft Excel, iWork.
Образцы CSV-файлов с примерами из этого руководства — в кодировке Windows-1251 (Excel) или UTF-8 (OpenOffice/LibreOffice).
Как самому получить образец правильного CSV-файла
- Добавьте вручную несколько категорий с товарами в бекенде интернет-магазина.
- Экспортируйте эти категории и товары в CSV-файл.
Посмотрите, как устроен экспортированный файл, и создавайте собственные файлы точно так же.
Порядок импорта CSV-файла
- Составьте CSV-файл.
- Загрузите файл в разделе «Импорт/Экспорт → Импорт товаров из CSV».
- Выберите соответствия для столбцов файла. Проверьте, правильно ли сработал автоматический выбор соответствий.
- Выберите столбцы идентификации товаров/категорий и артикулов.
- Если нужно, укажите расширенные настройки импорта.
- Выполните анализ файла и настроек импорта.
- Импортируйте файл.
Сначала потренируйтесь импортировать 1–2 товара. Когда будете уверены в правильности результата, переходите к большему количеству товаров. Так вы избежите больших ошибок, которые трудно исправлять.
1. Составление CSV-файла
В первой строке файла должны быть заголовки столбцов. В этой строке все ячейки должны идти друг за другом — без пропусков в виде пустых ячеек.
Начиная со второй строки начинайте добавлять товары и категории.
Любая строка может быть товаром, артикулом или категорией
Категория
Если в строке заполнены ячейки только в тех столбцах, которые относятся только к категориям , значит, из этой строки будет импортирована категория.
Товар или артикул
Если в строке заполнена хотя бы одна ячейка из столбцов
Если в идущих подряд нескольких строках заполнены ячейки в столбцах артикулов и совпадают значения в столбце, выбранном для идентификации товаров, то из первой строки в этой группе импортируется товар и его первый артикул, а из остальных строк этой группы импортируются дополнительные артикулы товара.
При импорте строк учитываются не все столбцы с заполненными ячейками, а только те столбцы, для которых выбраны соответствия на странице импорта. Соответствия для столбцов CSV-файла выбираются сразу после загрузки файла.
Описания столбцов
Заголовки столбцов могут быть необязательно такими, как в этой таблице. Столбцы можно называть как угодно. Главное, чтобы их названия отличались друг от друга.
столбцы, которые можно заполнять для категорий
столбцы, которые нельзя заполнять для категорий
Столбец CSV-файла | Описание | Пример | Только категории |
---|---|---|---|
Свойства товаров и категорий | |||
Наименование | Название товара или категории. | Apple iPhone 5S | |
Ссылка на витрину | Фрагмент адреса URL. | iphone-5s | |
Заголовок | HTML-тег TITLE. | Apple iPhone 5S | |
META keywords | META-тег keywords. | Apple, iPhone, мобильный телефон | |
META description | META-тег description. | смартфон на платформе iOS сенсорный экран мультитач (емкостный) диагональ экрана 4″… |
|
Описание | Текст полного описания. Может содержать HTML-теги. |
Опережая мысли.iPhone 5s задуман с определённой целью…
|
|
Статус | Отображение товара или категории на витрине. 1 — виден. 0 — на витрине не отображается. Скрытые товары и категории на витрине не видны, но доступны по прямой ссылке. |
1 | |
Валюта | ISO3-код валюты для импорт цен артикулов. Если валюта не указана, то цены импортируются в основной валюте магазина. | RUB | |
Тип товаров | Название типа товаров, который должен быть присвоен данному товару. Если в файле указан тип товаров, которого нет в настройках магазина, то при импорте файла будет создан новый тип с таким названием (только если у пользователя, выполняющего импорт, есть достаточные для этого права доступа). |
Мобильные телефоны | |
Краткое описание | Сокращенное описание товара для показа в списках товаров, например, в категориях и результатах поиска. Может содержать HTML-теги, но они могут не учитываться некоторыми темами дизайна. |
В iPhone 5s технологий стало ещё больше. Датчик идентификации по отпечатку пальца… | |
Наклейка | Один из стандартных идентификаторов наклеек для изображений товаров: new, bestseller, lowprice, или HTML-код собственной наклейки. | new | |
Теги | Теги товара через запятую. | iPhone,мобильный телефон,Apple | |
Облагается налогом | Название класса налогов для товара. Класс налогов с указанным в CSV-файле названием должен быть заранее настроен в разделе «Настройки → Налоги». |
НДС | |
Изображения |
URL или имя файла изображения товара. Чтобы импортировать несколько изображений для каждого товара, добавьте в CSV-файл несколько столбцов с одинаковым названием и укажите в них URL либо имена файлов изображений. |
iphone-5s-silver.jpg | |
Описания изображений товаров | Описание изображения, указанного в предыдущем столбце. | Вид спереди. | |
Изображения | Пример еще одного столбца с изображениями товаров. |
iphone-5s-gold.jpg | |
Описания изображений товаров | Описание следующего изображения. | Вид сзади. | |
Размер пример характеристики |
Дополнительная характеристика товара. Формат значения зависит от типа характеристики:
|
12 см {12 см,24 см,»38,5 см»}
|
|
Свойства артикулов товаров | |||
Артикул | Код артикула товара. Если у товара всего один артикул, то этот столбец можно не включать в файл. |
iphone-5s-white | |
Наименование артикула | Наименование артикула товара, отображающееся на витрине. Если у товара всего один артикул, то этот столбец можно не включать в файл. |
Белый, 32Gb | |
Цена | Цена артикула. Валюта цены импортируется из столбца товара «Валюта». |
41990 | |
Доступен для заказа | 0 — артикул недоступен для заказа. 1 — артикул можно заказать. |
1 | |
Зачеркнутая цена | «Зачеркнутая цена» артикула. Валюта цены импортируется из столбца товара «Валюта». |
42550 | |
Закупочная цена | «Закупочная цена» артикула. Валюта цены импортируется из столбца товара «Валюта». |
39990 | |
В наличии | Количество артикула на общем складе магазина. Название конкретного склада не указывается, если склады в магазине не настроены. |
24 | |
В наличии @склад1 | Количество единиц артикула на складе с указанным названием. Если в магазине настроено несколько складов, добавьте в CSV-файл несколько столбцов для импорта остатков для каждого склада. Названия складов в файле должны точно соответствовать названиям складов магазина. Перед названием склада поставьте символ @ без пробела. |
18 | |
В наличии @склад2 | Пример столбца с остатками еще одного склада. | 25 | |
Основной артикул | Обозначение артикула, который должен стать основным артикулом товара. У каждого товара только один артикул может быть артикулом по умолчанию. | 1 | |
Изображения | URL или имя файла изображения товара, которое должно быть выбрано в свойствах артикула. | iphone-5s-silver.jpg |
Категории и подкатегории
С помощью CSV-файла можно создавать только статические категории товаров. Существующие динамические категории можно только обновлять — добавлять их нельзя.
Без специальных обозначений категории импортируются в самом верхнем уровне каталога. Чтобы разместить одну категорию внутри другой, перед названием такой подкатегории добавьте восклицательный знак.
Строка с подкатегорией должна быть в CSV-файле ниже строки с родительской категорией: либо сразу под ней, либо после товаров родительской категории.
Наименование | Цена |
---|---|
Мобильные телефоны | |
Тут может быть товар родительской категории |
100 |
!Apple | |
А тут товар подкатегории |
150 |
Чтобы разместить категорию на еще более низком уровне относительно предыдущей, добавьте перед названием еще один восклицательный знак.
Если нужно поместить очередную категорию на уровень выше относительно предыдущей, добавьте перед ее названием меньшее количество восклицательных знаков:
Наименование | Цена |
---|---|
Мобильные телефоны | |
!Nokia | |
!!Series 60 | |
!Apple |
Размещение товаров в категориях
Чтобы импортировать товары в нужную категорию, добавьте строки с этими товарами ниже строки с этой категорией — до строк с другими категориями.
Изменить принадлежность товара к категории можно только вручную в бекенде интернет-магазина. С помощью импорта CSV-файла принадлежность к категориям изменить нельзя.
Пример размещения товаров в категориях
Наименование | Цена |
---|---|
Мобильные телефоны | |
Apple iPhone 5S | 36990 |
!Распродажа | |
HTC One | 15900 |
В этом примере товар с наименованием «Apple iPhone 5S» будет импортирован в категорию «Мобильные телефоны», а товар «HTC One» — в категорию «Распродажа».
Добавление товара в несколько категорий
Путем импорта товар можно разместить сразу в нескольких категориях. Для этого нужно продублировать строку товара под строками нескольких категорий.
Пример
Наименование | Цена |
---|---|
Категория 1 | |
Товар | 1000 |
Категория 2 | |
Товар | 1000 |
Импорт товаров и их артикулов
Чтобы импортировать товар с несколькими артикулами, перечислите в файле строки таких артикулов одну за другой — после основной строки с товаром. В столбце идентификации товаров в таких строках должно быть указано одинаковое значение — чтобы вся группа артикулов оказалась отнесена к одному и тому же товару. Если идентификация товаров выполняется по названиям, то у всех артикулов одного товара должно быть одинаковое название товара.
Из группы строк, носящихся к одному товару, информация импортируется так:
- Из первой строки группы информация из столбцов товаров импортируется в свойства товара.
- Информация из столбцов товаров для всех остальных строк, кроме первой, не импортируется.
- Из всех строк группы информация из столбцов артикулов импортируется в свойства артикулов.
Артикулы можно импортировать в одном из двух режимов: 1) простой список артикулов и 2) выбор значений характеристик.
Режим 1: Простой список артикулов
Для импорта артикулов в виде простого списка перечислите все артикулы товара друг за другом. В столбце идентификации товаров укажите одинаковое значение. В столбце идентификации артикулов укажите разные значения.
Вот пример CSV-файла со списком артикулов одного товара. Для идентификации товаров используется столбец с наименованием, а для идентификации артикулов — столбец с артикулами.
Наименование | Артикул | Цена |
---|---|---|
Ботинки для сноуборда Jet | jet-6-white | 5050 |
Ботинки для сноуборда Jet | jet-7.5-black | 5080 |
Ботинки для сноуборда Jet | jet-8-white | 5080 |
Режим 2: Выбор значений характеристик
Для импорта артикулов товаров в режиме выбора значений характеристик укажите значения характеристик через запятую внутри специальных двойных скобок . В этом режиме можно использовать только характеристики типа «Выбор нескольких возможных вариантов (checkbox)». Из каждого сочетания значений во время импорта файла будет создан отдельный артикул. Для идентификации артикулов, сформированных из значений характеристик, выберите столбец с наименованиями артикулов.
Пример
Нужно сформировать артикулы из трех значений характеристики «Цвет». В этом примере из них будут созданы три артикула — каждый для одного из значений характеристики «Цвет».
Наименование | Цена | Доступен для заказа | В наличии | Цвет |
---|---|---|---|---|
Apple iPhone 5S | 36990 | 1 | 200 |
Остальные свойства, относящиеся к артикулам, будут применены ко всем сформированным артикулам. В этом примере для всех трех артикулов будет включено свойство «Доступен для заказа» и будет установлена цена 36990.
Для создания артикулов можно использовать значения нескольких характеристик. Точно так же вы выбираете значения нескольких характеристик, когда вручную создаете артикулы из значений характеристик в бекенде магазина.
Пример
В этом примере будут сформированы 9 артикулов — для всех сочетаний из 3 значений характеристики «Цвет» и 3 значений характеристики «Объем встроенной памяти» (3х3=9).
Наименование | Цена | Цвет | Объем встроенной памяти |
---|---|---|---|
Apple iPhone 5S | 36990 |
Импорт индивидуальных значений для артикулов, сформированных из значений характеристик
Чтобы указать индивидуальные значения цены, доступности для заказа и наличия на складе для отдельных артикулов, для таких артикулов нужно добавить отдельные строки. В этих строках в столбце с наименованиями артикулов нужно перечислить через запятую с пробелом значения характеристик, которые соответствуют каждому такому артикулу, и эти же значения указать в столбцах с характеристиками — без двойных скобок .
Количество на складе для автоматически генерируемых артикулов им импорте также извлекается из этой строки, однако оно может быть импортировано несколькими способами (нужный способ можно выбрать в расширенных настройках во время импорта CSV-файла):
- Разделить указанное значение на складе поровну между всеми такими артикулами (режим, выбранный по умолчанию).
- Импортировать указанное значение на складе для каждого из артикулов.
- Не импортировать значение наличия на складе при импорте артикулов, сгенерированных на основе значений характеристик.
Пример
Наименование | Наименование артикула | Цена | В наличии | Цвет | Объем встроенной памяти |
---|---|---|---|---|---|
Apple iPhone 5S | 36990 | ||||
Apple iPhone 5S | серый, 32Gb | 41990 | 12 | серый | 32Gb |
Apple iPhone 5S | золотой, 64Gb | 46990 | 34 | золотой | 64Gb |
При импорте артикулов в режиме «Выбор значений характеристик» для идентификации артикулов необходимо выбирать столбец, содержащий наименования артикулов.
2. Загрузка файла
Перейдите в раздел «Импорт/экспорт → Импорт товаров из CSV».
Выберите символ, который используется в файле для разделения данных. Обычно это точка с запятой.
Выберите кодировку файла. Обычно UTF-8, если файл создавался в OpenOffice или LibreOffice, или Windows-1251, если файл создавался в Microsoft Excel.
Если вы используете в названиях или описаниях товаров специальные символы, например, ©, ±, ö и некоторые другие, то CSV-файл для импорта таких товаров рекомендуется сохранять с использованием международной кодировки UTF-8, чтобы эти символы не потерялись.
Выберите CSV-файл из папки на своем компьютере.
Если размер файла составляет несколько мегабайтов, то лучше запаковать его в ZIP- или GZ-архив. Скрипт импорта сам распакует архив на сервере, а вы сэкономите время на загрузку большого файла.
После загрузки файла на странице появится список его столбцов.
3. Выбор соответствий для столбцов файла
Для некоторых столбцов сразу будет выбрано соответствие — в какие свойства товаров/категорий или артикулов нужно импортировать каждый столбец. Проверьте, насколько правильно сработало автоматическое определение, и исправьте ошибки.
4. Выбор столбцов идентификации
Выберите свойства категорий/товаров/артикулов, которые должны использоваться для идентификации элементов каталога.
Идентификация очень важна — для того чтобы «показать» скрипту импорта, чем отличаются друг от друга категории товары и артикулы, перечисленные в CSV-файле. Выберите для идентификации те свойства, в чьих столбцах должны содержаться неповторяющиеся значения для каждого типа элементов каталога.
Варианты идентификации товаров и категорий
Выберите подходящий вариант:
- Наименование: товары и категории в файле будут различаться по столбцу, для которого вы выберите свойство «Наименование».
- Ссылка: товары и категории в файле будут различаться по столбцу, для которого вы выберите свойство «Ссылка на витрину».
- ID товара: категории импортироваться и обновляться не будут, а товары в файле будут различаться по столбцу, для которого вы выберите свойство «ID товара». ID товара — это числовой идентификатор товара в таблице базы данных shop_product. Его видно на странице редактирования товара в бекенде магазина.
- Идентификатор товара «1С»: категории и товары в файле будут различаться по столбцу, для которого вы выберите свойство «Товар: Идентификатор 1С».
- Столбец идентификации артикулов: категории импортироваться и обновляться не будут, а товары в файле будут различаться по столбцу, который вы выберите для идентификации артикулов.
- (пропускать товары и категории и импортировать только артикулы): категории и товары импортироваться и обновляться не будут, а будут импортироваться и обновляться только артикулы товаров, и они будут различаться по столбцу, который вы выберите для идентификации артикулов.
Варианты идентификации артикулов
Выберите подходящий вариант:
- Код артикула: артикулы товаров в файле будут различаться по столбцу, для которого вы выберите свойство «Код артикула».
- Наименование артикула: артикулы товаров в файле будут различаться по столбцу, для которого вы выберите свойство «Наименование артикула».
- ID артикула: артикулы товаров в файле будут различаться по столбцу, для которого вы выберите свойство «ID артикула». ID артикула — это числовой идентификатор артикула в таблице базы данных shop_product_skus.
- Идентификатор артикула «1С»: категории и товары в файле будут различаться по столбцу, для которого вы выберите свойство «Артикул: Идентификатор 1С».
5. Расширенные настройки
Расширенные настройки нужно изменять не всегда. Когда нужно:
- Вы хотите обновлять товары по названию и в категориях вашего каталога есть товары с совпадающими названиями. По умолчанию скрипт импорта ищет товары с совпадающими названиями или ссылками URL по всему каталогу, чтобы обновить их из CSV-файла. А если выключить флажок «Игнорировать принадлежность категориям при поиске совпадений товаров», то скрипт импорта будет искать товары с такими данными только в той категории, в которой они указаны в CSV-файле.
- Вам важно, какой тип будет присвоен новым товарам из файла, для которых в файле тип не указан. По умолчанию для товаров без типа в CSV-файле выбран один из типов из настроек магазина. Если по умолчанию выбран не тот тип, выберите нужный.
-
В CSV-файле в описаниях товаров нет HTML-тегов. Чтобы на страницах магазина учитывались переносы строк в описаниях товаров, для них скрипт импорта добавит HTML-теги
. - Вы импортируете изображения товаров из загруженных файлов, а не по URL. Выберите подходящую корневую директорию сервера и допишите путь к той поддиректории, в которую вы загрузили файлы изображений товаров. Загружать изображения товаров нужно в директорию на сервере, а не на вашем компьютере.
- Вы импортируете изображения товаров по URL, которые оканчиваются одинаково. Например, в URL изображений различается только путь к файлу, а имя файла во всех URL совпадает. В этом случае для настройки «Уникальность URL изображений товаров» выберите вариант «по пути к файлу». Если совпадает и путь к файлу, а различается доменное имя, то выберите вариант «по пути к файлу и доменному имени».
- Вы импортируете складские остатки для артикулов товаров, сформированных из значений характеристик в двойных скобках . Выберите подходящий вариант импорта складских остатков для таких артикулов.
6. Анализ выбранных параметров
Нажмите на кнопку внизу страницы, чтобы выполнить предварительный анализ файла и выбранных настроек. Скрипт импорта оценит, сколько категорий, товаров и артикулов будут импортированы. Если вы рассчитывали, что их количество должно быть другим, проверьте, правильно ли вы выбрали настройки импорта. После исправления настроек снова выполните анализ файла.
7. Импорт файла
Импортировать файл можно только после окончания его анализа. Чтобы начать импорт файла, нажмите на кнопку подтверждения внизу страницы.
Не закрывайте страницу экспорта в браузере, пока файл импортируется. Дождитесь сообщения об окончании импорта.
Примеры решения практических задач при импорте товаров из CSV-файла.
Импорт товаров в WooCommerce
Как сделать массовый импорт товаров в интернет-магазин, работающий на плагине WordPress – WooCommerce? Совсем недавно этого нельзя было сделать бесплатно, зато платных плагинов импорта существует предостаточно, в том числе и у WooCommerce. Это их заработок, ведь сам плагин распространяется бесплатно, но с ограниченными возможностями.
Конечно, за нужное и полезное дополнение, не жалко и заплатить, если ваш магазин начал приносить доход. А как быть начинающим, кому хочется попробовать и посмотреть? Не будешь же покупать все подряд, для разных экспериментов. Так вот, к чему я все это веду, не так давно во вкладке Товары -> Все товары, появились две кнопки – Импорт и Экспорт.
Мне стало жутко интересно, а что реально можно сделать этими кнопками? В альтруизм команды WooCommerce, я не верю. Давайте посмотрим, какие плюшки для нас не пожалели разработчики плагина.
Импорт товаров из CSV файла
Этот инструмент позволяет импортировать или дописывать данные товара из CSV файла к вашему магазину. Размер загружаемого файла не должен превышать 2 мегабайта (существенное ограничение). Так же есть возможность обновления данных товаров, если поставить галочку в чекбоксе, то товары с одинаковыми ID, обновятся. Данная функция пригодится, при обновлении базы с товарами.
Расширенные настройки
Там есть поле, где вы указываете путь к CSV файлу на сервере. Зачем это нужно? Давайте представим, что есть поставщик, товар которого вы продаете в своем магазине. Поставщик меняет цены и удаленно сам обновляет ваш CSV файл на актуальный, с новыми ценами. По-моему слишком сложно, не проще ли поставщику просто послать вам обновленный файл.
В поле с разделитем CSV по умолчанию стоит запятая, которая отделяет друг от друга данные о товаре. Что здесь надо знать и понимать? Разделитель в CSV файле должен быть таким же, как в этом поле импорта. Всегда надо проверять, полученный файл от поставщиков, если например, там стоит точка с запятой, то и вы в данном поле прописываете точку с запятой, иначе импорт не произойдет.
Пример CSV файла
В верхней строке мы видим названия полей, разделенные запятой. В следующих строчках – значения товаров. В некоторых столбцах вместо значений стоят запятые, это значит что столбец пустой, то есть значение в базе отсутствует.
Программа для работы с CSV форматом
Наилучшим образом для работы с CSV файлами подходит бесплатная программа На странице OpenOffice, перед открытием CSV файла для редактирования, откроется предварительное окно с настройками. Выбираете кодировку UTF-8 и ставите галочку напротив нужного разделителя.
Процесс импорта CSV файла
Шаг1) Загрузить CSV файл
Шаг2) Назначить CSV поля товарам
Все значения товаров с именами столбцов появились в левом столбике, вам надо из левого столбика выбрать подходящие названия полей.
Если импорт прошел успешно, то вы увидите следующую, картинку.
Все, товары импортировались.
Открою вам тайну, что у меня процесс импорта прошел гладко, только потому что, я сначала сделал экспорт нескольких товаров из магазина. На выходе я получил готовый CSV файл, с правильными названиями полей и потом этот же файл обратно импортировал.
Таким образом, выявилась первая польза от нововведения, можно быстро вносить изменения в CSV файле и обратно импортировать, чем открывать товар по очереди.
Какие возникли проблемы
Вы не можете импортировать CSV файл как он есть, получаете ли вы его от поставщиков или от партнерки. Названия столбцов в CSV файле должны строго совпадать с названиями выбираемых полей при импорте. На практике вам сначала надо заменить названия столбцов, которые в верхнем ряду на такие же, как в плагине, иначе импорта не будет.
Выводы
Делать импорт товаров через родной Импорт/Экспорт WooCommerce сходу не получиться, нужно терпение, чтобы разобраться в этом. А тем, кто разобрался, предстоит редактирование CSV файла (заменять названия столбцов). Еще раз подтверждается истина, что хороший продукт не может быть бесплатным. По сегодняшним стандартам – хорошо, это когда все просто и не надо париться. Только за этой простотой стоит огромный труд разработчиков.
- Создано 09.11.2018 10:45:41
- Михаил Русаков
Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!
Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.
Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления
Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.
Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):
Импорт товаров из CSV | Инструкция Moguta.CMS
Назначение полей:
ID товара
Необязательное поле. Идентификатор товара в системе.
Артикул
CN100
Уникальный символьный код товара.
Категория
Пример: Аксессуары/Головные уборы
Обязательное поле. Указывается название категории и подкатегорий. Подкатегории указываются через символ /.
URL категории
Пример: aksessuary/golovnye-ubory
Необязательное поле. Содержит URL-адрес категории с учетом вложенностей. Следует заполнять, только, если вы хотите задать определённый URL, в противном случае URL для каждой категории будет заполнен автоматически транслитерацией из названия категории.
Товар
Пример: Бейсболка мужская Demix
Обязательное поле. Название товара.
Вариант
Пример: Черный[:param:][src=241.jpg]
Необязательное поле. Нужно для создания вариантов, размеров и цветов товара. В конструкции [src=241.jpg] позволяет задать имя картинки, которая будет прикреплена к данному варианту товара.
Краткое описание
Необязательное поле. Содержит краткое описание товара, которое выводится в миникарточке. В данном поле имеется возможноть использовать html-разметку (весь текст должен быть в одну строку!).
Описание
Необязательное поле. Содержит полное описание товара. В данном поле имеется возможноть использовать html-разметку (весь текст должен быть в одну строку!).
Цена
Обязательное поле. Содержит цену товара или его варианта. Указывается только числовое значение, без пробелов и валюты.
Изображение
Необязательное поле. Позволяет загрузить изображения для товара. Изображения можно загрузить ZIP архивом с компьютера, либо по ссылкам со сторонних источников.
-
Загрузка ZIP архивом
Подготовьте необходимые изображения, запакуйте в ZIP архив. В столбце «Изображение» вашего CSV файла укажите название вместе в расширением, например image.jpg. Так же полезым для SEO продвижения будет указать атрибуты alt и title для изображений, сделать это можно так:img.jpg[:param:][alt=Картинка][title=Картинка]
где вместо «Картинка» прописываете необходимый вам текст. Если вам необходимо загрузить несколько изображений для товара, то перечислять их нужно через символ |, например:
img.jpg|img2.jpg|img3.jpg
или
img.jpg[:param:][alt=Картинка][title=Картинка]|img2.jpg[:param:][alt=Картинка][title=Картинка]|img3.jpg[:param:][alt=Картинка][title=Картинка]
После загрузки CSV файла вам будет предложено загрузить архив с изображениями.
-
Загрузка по ссылке
Если вам необходимо загрузить изображения по ссылке, то просто укажите её в столбце «Изображение» вашего CSV файла, например:http://www.site.ru/images/img.jpg
При таком способе загрузки можно указать только одно изображение для каждого товара, а также нет возможности прописать атрибуты alt и title.
Загружать архив с изображениями после импорта CSV в таком случае не нужно, просто обновите страницу после окончания загрузки CSV.
Количество
Необязательное поле. Остаток(количество) товара в магазине.
Активность
Необязательное поле. 1 — товар будет отображаться в каталоге на сайте. 0 — товар будет скрыт. Сменить активность можно будет вручную в разделе «Товары» административной части сайта.
Заголовок [SEO]
Пример: Бейсболка мужская Demix
Текст, который будет отобажаться в мета-теге Title на странице товара. Один из основных тегов, влияющих на продвижение вашего сайта в поисковых системах. Именно этот текст поисковые системы будут использовать для заголовка вашего сайта в поисковой выдаче. Также он будет показываться во вкладке вашего браузера.
Параметр необязателен, так как, если не указать его в CSV, он будет сгенерирован автоматически из названия товара.
Ключевые слова [SEO]
Пример: Бейсболка мужская Demix купить, CN32, Бейсболка, мужская, Demix
Текст, который будет отобажаться в мета-теге keywords на странице товара. Этот метатег предназначен для описания ключевых слов, встречающихся на странице.
В данный момент многие поисковики пропускают этот параметр и не учитывают его в поисковой выдаче. Параметр необязателен, если не указать его в CSV, он будет сгенерирован автоматически.
Описание [SEO]
Пример: Непревзойдённое сочетание цены и качества говорят сами за себя, что значительно упрощает решение при выборе товара.
Текст, который будет отображаться в мета-теге description на странице товара. Один из основных тегов, влияющих на продвижение вашего сайта в поисковых системах. Именно его многие поисковики будут подставлять в так называемый сниппет — текст, который будет показываться под заголовком в поисковой выдаче.
Параметр необязателен, так как, если не указать его в CSV, он будет сгенерирован автоматически из описания товара.
Старая цена
Необязательное поле. Позволяет установить старую цену для товаров, обычно используеться для установки скидки у товара. Товары, имеющие старую цену, будут отображаться в блоке «Акции» на главной странице вашего интернет-магазина.
Рекомендуемый
Необязательное поле. 1 — Выводить товар в блоке «Рекомендуемые товары»(Хиты) на главной странице вашего интернет-магазина. 0 — не выводить.
Новый
Необязательное поле. 1 — Выводить товар в блоке «Новинки» на главной странице вашего интернет-магазина. 0 — не выводить.
Сортировка
Необязательное поле. Позволяет вручную указать порядок вывода товаров путём присвоения порядкового номера каждому товару.
Вес
Необязательное поле. Позволяет указать вес товара. Данный параметр обычно необходим для интеграции с сервисами доставки. Указывается только числовое значение в килограммах, дробные значения указываются через точку.
Связанные артикулы
Пример: CN17,CN18
Необязательное поле. Указываются артикулы товаров, которые будут показываться в блоке «С этим товаром покупают» на странице товара.
Смежные категории
Пример: 13,16,67
Необязательное поле. Указываются номера категорий, товары из которых будут показываться в блоке «С этим товаром покупают» на странице товара. Номера категорий можно посмотреть в разделе «Категории» в панели админстратора.
Ссылка на товар
Необязательное поле. Если вы собираетесь продавать электронные товары (книги, документы, музыку, любые другие файлы), то в этом поле необходимо указать ссылку на файл, который будет отправлен покупателю после оплаты. Сами файлы можно размещать в папке uploads в корне сайта, тогда ссылка будет иметь вид:
http://site.ru/uploads/file.pdf
Валюта
Пример: RUR
Необязательное поле. Позволяет установить валюту для определённого товара. Основная валюта магазина задаётся в разделе «Настроки» — «Валюта» в панели админстрирования сайта.
Единицы измерения
Пример: шт.
Необязательное поле. Устанавливает единицу измерения товара.
Оптовые цены
Необязательное поле. В заголовке данного столбца нужно указать значение количества, от которого будет применяться цена, указанная в ячейках этого столбца.
Пример записи заголовка: Количество от 10 [оптовая цена]
Пример записи значения: 999
Обратите внимание на написания заголовков столбцов, текст в них должен быть такой же, изменять необходимо только число. Таких столбцов можно в CSV файле создать столько, сколько условий количества вам наобходимо, следовать они должны один за другим.
В ячейках указывается только числовое значение цены, без валюты и пробелов.
Склады
Необязательное поле. В заголовке столбца указывается название склада и обязательный параметр [склад], в ячейках столбца указывается количество данного товара на складе.
Пример записи заголовка: Слад №1 [склад]
Пример записи значения: 9
Таких столбцов можно в CSV файле создать столько, сколько складов вам наобходимо, следовать они должны один за другим.
Свойства начинаются с
Необязательное поле. В этом пукте необходимо указать с какого столбца у вас в CSV файле начинаются характеристики(свойства) товара, например:
В данном файле характеристики начинаются со столбца «Длина», именно его и следует указать в поле «Свойства начинаются с» при импорте.
Многостолбцовая структура. В заголовках вы указываете название свойства товара, а в самом поле указываете значение свойства. Если свойство является цветом или размером, в заголовке после названия свойства требуется прописать соответственно [size] или [color].
Если характеристика является текстовым полем, то аналогичным способом нужно приписать [textarea]. Если требуется задать несколько характеристик с одинаковым названием, необходимо у повторных характеристик указывать уникальный атрибут, например: Размер.
Примеры записи заголовка:
Производитель
Цвет [color]
Размер [size]
Размер [size]
Описание производства [textarea]
В ячейках под заголовком нужно вписать значение свойства товара, если это свойство «цвет», то после названия цвета можно сразу прописать соответствующий ему HEX-код цвета в квадратных скобках, например так: Белый [#ffffff].
Если в вашем магазине уже заданы переводы, то после перезаписи характеристик через CSV переводы для них стираются!
Сложные характеристики
Необязательное поле. Это поле не заполняется вручую, в него выгружаются сложные характеристики при экспорте каталога из магазина в CSV.
Как загрузить товары из файла? | Помощь
Для загрузки товаров из файла нужно выполнить всего несколько шагов
Пожалуйста, следуйте инструкции:
1. Импорт товаров осуществляется из файла форматов csv или Excel. Максимальный размер файла 16 Мбайт.
2. Откройте вкладку «Я — Организатор», выберете СП, нажмите на плюс с левой стороны от названия и на импорт
3.1 Выбираем параметры добавляемых товаров:
— категория товара
— группа товара
— создание ряда
3.2 Настройки самого файла
— кодировка файла
— разделитель полей (по умолчанию: «,» )
— поля ограничены (по умолчанию: «)
3.3 Настройки вывода на экран
— количество строк на экран (строки, по которым возможно будет определить какому полю, что соответствует, где название, где цена, и т.д.)
— количество ошибок на экран
— отображение строк с ошибками
3.4 Выбрать файл, нажав на кнопку Обзор… после этого файл будет загружен.
3.5 Листинг примерного файла
Внимание! В этом файле поля:
1 — Название товара
2 — Артикул
3 — Цена
4 — Описание
5 — Ссылка на рисунок на стороннем сайте
6 — Размер товаров
7 — Цвет товаров
4.1 После загрузки файла отобразится второе окно, в котором необходимо привести в соответствие поля файла с их содержимым, для этого в выпадающих списках над каждым из полей необходимо выбрать соответствующее значение.
4.2 Нажать на кнопку «Пересмотреть файл», страница перегрузится и данные пересчитаются.
4.3 Если произошли ошибки, то они отобразятся в таблице «Ошибки в строках».
4.4 Можно проигнорировать строчки содержащие ошибки поставив галочку в соответствующем поле, в этом случае обработаны будут только строчки без ошибок.
4.5 Галочка возле «Если уже есть созданный товар, обновить в нем информацию» — обновит уже существующие товары иначе будут добавлены только новые.
4.6 Если ошибок нет или выбран параметр «игнорировать строки с ошибками», то появится кнопка «Добавить товары».
4.7 Нажатие на кнопку «Добавить товары» — произойдет добавление товаров в базу.
Внимание! Прежде чем задать вопрос, пожалуйста, еще раз внимательно прочитайте данную инструкцию.
Не нашли нужной информации? – Задайте свой вопрос.
Другие способы связи с технической поддержкой.
Opencart импорт и экспорт товаров
Пожалуй, что именно импорт и экспорт в простые и понятные форматы типа Excel или Csv — это наиболее востребованный вид модулей. Почти каждый третий заказчик магазина на Opencart интересуется этими расширениями и хочет применять их в своей повседневной деятельности.
Обычно каждый думает так: «Мне же надо будет обновлять цены товара, если я буду делать это вручную, мне край. О, точно! Есть же модуль импорта и экспорта! Я выгружу всё в Эксель, быстренько поменяю и загружу обратно».
И так действительно легче всего менять цены, я и сам активно пользовался импортом — экспортом еще в те времена, когда у меня был интернет-магазин
Но есть один нюанс: все модули, которые я встречал под Opencart, да и под другие CMS, были далеки от идеала. То есть обладали рядом неприятных багов или просто нелогичностями, которые сильно затрудняли их применение.
Сейчас я приведу несколько модулей, которые наиболее популярны среди владельцев магазинов Опенкарт и Окстор (это фактически одно и то же) и вкратце расскажу, на что нужно обратить внимание при их использовании, чтобы импорт и экспорт прошли гладко.
Бесплатный модуль «Export/Import Tool»
https://www.opencart.com/index.php?route=marketplace/extension/info&extension_id=17
Это простой, популярный и доступный модуль для импорта и экспорта товаров в Opencart. Я рекомендую с ним разобраться всем, потому что он всегда может пригодиться, если вы делаете выгрузку, например, на каком-то стороннем сайте, где нет вообще никаких модулей для экспорта.
Он бесплатный. Совсем.
С его помощью очень легко сделать первичное наполнение магазина копией с другого магазина на Opencart.
Не нужно на тестовых поддоменах ставить платные модули, ion cube, писать авторам, ждать лицензионный ключ несколько дней и т.п.
Поставили модуль, сделали выгрузку со старого магазина, потом скопировали в новый. И все товары, категории, атрибуты и даже покупатели (что выбрано) — будут перенесены.
Сфера его применения, как я это вижу:
- разработчики магазинов могут гонять туда-сюда кучу товаров, это единственный модуль, который умеет очищать ваши товары, категории, атрибуты и т.п. перед импортом. Это очень удобно, если у вас уже есть 500 атрибутов и вы хотите загрузить новый файл с 10. В этом случае вы просто ставите флажок «Очистить» и у вас не 510 атрибутов, их которых 500 — балласт от старого сайта, а всего 10 ваших новых.
- переезд на другой шаблон или версию Opencart, когда просто массово переносятся все товары без использования phpmyadmin. В этом случае всё делается максимально быстро и просто, даже проще чем в платных модулях. Парадокс.
- изменение цен: выгрузили все товары, поменяли цены, загрузили обратно. Но это в последнюю очередь, так как у него довольно корявая и запутанная структура и изменение цен удовольствия никакого не доставляет, хотя сделать это возможно.
Недостатки модуля:
- Модуль не имеет защиты от нагрузки, поэтому если у вас 5000 товаров и дешевый шаред-хостинг (что такое хостинг), то для работы магазина мощностей хостинга худо-бедно хватает, а вот экспорт или импорт может завершаться кучей самых разных ошибок, начиная от белого экрана и заканчивая 500 ошибками и просроченными таймингами.
- Выгружает всё в разные файлы (атрибуты — свой файл, товары — свой, опции — еще один). Это скорее неудобно, чем удобно. ИМХО оптимальный импорт-экспорт должен быть всё же в один файл.
- Это единственный модуль выгрузки на моей памяти, который НЕ импортирует обратно то, что он только что экспортировал. То есть выгрузили Эксель файл, начинаете его загружать обратно даже без изменений — он выдает ошибку. Чтобы ее победить я как-нибудь попозже расскажу об этом подробнее, там фишка в том чтобы поиграться с настройками и выставить или убрать флажки.
Частенько грешит самыми разнообразными ошибками, например:
PHP Fatal Error: Class ‘XMLWriter’ not found
Чтобы победить нужно включить на хостинге в нужной версии PHP модуль XMLWriter (или попросить хостера это сделать).
Смотрите видео по экспорту и импорту в этом бесплатном модуле.
Видео
Платный модуль импорта и экспорта «Ocext»
https://shop.ocext.com/anycsv-xls-import—eksport-v-csv—dsv—xls—xlsx—yml/predzakaz-tolko-dlya-50-klientov-anycsv-xls-yml-import-csv—xls—yml-i-fajlov-eksel-v-opencart-2—3-pro-edition
На самом деле модуль называется anyCSV/XLS/YML PRO Edition для импорта CSV, DSV, XLS, XLSX, YML файлов в OpenCart 2, 3.
Но согласитесь, что названия — не самая сильная сторона автора
Тем более, что у него же есть еще несколько модулей с подобными названиями и там такая чехарда получается, что найти концы неподготовленному человеку и выбрать правильный модуль затруднительно
Так что я его буду называть «Ocext», а смотреть его можно по ссылке выше.
Именно этот модуль я использую чаще всего, у него есть огромное преимущество — он универсальный. То есть вы можете настроить шаблон выгрузки или импорта.
Например, вам поставщик каждую неделю присылает свой прайс с новыми ценами. И естественно, под вас он подстраиваться не будет и менять свой формат прайс-листа, чтобы вы могли его загрузить через Export/Import tool или CSV Price Pro — никто не собирается. И чтобы обновлять цены в обычном случае вам придется:
- сначала сделать выгрузку текущих товаров с артикулом и ценой в формате Export/Import tool иил CSV Price Pro.
- затем вручную сверяя цены с прайсом поставщика поменять цены в этом файлике XLS или CSV.
- залить его обратно.
Это муторно и теряется, порой, весь день на эту процедуру.
Если использовать Ocext, то достаточно создать шаблон от поставщика и назвать его, скажем, «Поставщик Bosch». И затем в нем задать условие: вот эта колонка в файле это артикул, а это — цена. Всё.
Теперь когда поставщик пришлет очередной прайс, достаточно «скормить» его вашему шаблону и модуль автоматически подставит нужным товарам новую цену.
И такие шаблоны можно сделать на каждого поставщика
Аналогично шаблоны работают на выгрузку. Вы можете настроить выгрузку со своего сайта в разные форматы для разных дилеров (можно выбрать нужные категории для выгрузки и т.п. параметры).
И каждый дилер сможет по своей ссылке забирать свой прайс. Удобно.
Недостатки Ocext
Самый главный недостаток этого комбайна: под каждую простейшую задачу, типа «по-быстрому выгрузить все артикулы и цены из категории пылесосы» нужно каждый раз делать очередной шаблон!
В итоге им имеет смысл пользоваться только для сложных и нестандартных задач. Для простых операций импорта и экспорта надоедает бесконечно тыкать одни и те же опции, делая 100500 шаблон выгрузки.
Если бы в нем авторы сделали еще одну «волшебную» кнопку «Выгрузить всё и сразу» в XLS и импортировать обратно, а также сделали бы универсальную версию без привязки к домену за приличную сумму для разработчиков — цены бы ему не было
Платный модуль импорта и экспорта «CSV Price Pro»
https://opencartforum.com/files/file/467-csv-price-pro-importexport/
Один из наиболее известных модулей импорта и экспорта для Опенкарта, с которым я познакомился еще на версиях 1.5. Он хорош тем, что простой как грабли — самый простой в управлении модуль из всех рассмотренных.
В интерфейсе разберется школьник.
Действительно, выбрал чего нужно выгружать, из каких категорий и скачал готовый файл CSV (это такой формат типа XLS, только без формул).
Это идеальный вариант для того, чтобы выгрузить файлик, поправить несколько значений типа цены, названий или характеристик и загрузить обратно.
Поэтому если у вас только такая задача и планируется, то покупайте именно его, он сэкономит вам кучу времени и нервов.
Недостатки CSV Price Pro
Увы, но из него быстро вырастаешь.
И хочется уже большей автоматизации, чем просто выгружать, менять и загружать обратно.
CSV Price Pro — это хороший молоток, но чем больше им стучишь по стене, тем больше хочется перфоратор.
Как по мне, то еще минус — работа исключительно с CSV, с XLS работать гораздо удобнее, не нужен OpenOffice с его бесконечными вопросами в какой формат сохранять
Сравнение модулей импорта и экспорта для Opencart и Ocstore
Таблица сравнения модулей импорта и экспорта под Opencart 2 и 3
Export/Import Tool | Ocext | Price Pro | |
Что делает лучше всего | Массово копирует все категории и товары | Гибкий импорт и экспорт, лучше всего обновлять цены добавленных поставщиков по заранее сделанному шаблону. | Простое обновление цен и других данных в одном формате CSV. |
Формат экспорта и импорта | Только XLSX | Любой | Только CSV |
Защита от нагрузки на хостинг | Нет | Да | Нет |
Требует при импорте подготовленного файла | Да, капризный | Нет, универсальный | Да, но достаточно простой в работе |
Сложность установки и работы | Средне | Сложно | Просто |
Частота обновлений | Редко | Часто | Часто |
Импорт и экспорт по крону (планировщик) | Нет | Да | Да |
Лицензия | Неограниченно | На домен | На домен |
Цена на момент написания статьи | Бесплатно | 1490р | 1750р |
Моя оценка |
5 |
9 |
8 |
10 баллов как видите не получил никто просто потому, что действительно такого модуля, который был бы простой, универсальный, удобный, дешевый и открытый я не нашел.
Автоматическая обработка прайс-листов
Есть еще один мощный модуль «Автоматическая обработка прайс-листов» — https://opencartforum.com/files/file/811-avtomaticheskaya-obrabotka-prays-listov/
Теоретически он может делать импорт и экспорт. Но всё же его основное предназначение — именно парсинг и обработка десятков прайс-листов, и он так сложен в настройке, что поэтому о нем я тут и не пишу: новичкам он без радости, а профессионалы, которые гоняют кучу товаров туда сюда или предоставляют услуги по парсингу товаров и так прекрасно знают о нем.
Выводы и итоги
Если у вас реально много товаров (тысячи), то перед применением всяких импортов и экспортов я бы рекомендовал купить нормальный VPS — хостинг.
Иначе вы обречены на бесконечную волокиту и отлов багов выгрузки: вот только что выгрузилось всё отлично, а через 10 минут когда на сайт зашло 2 человека и подняли нагрузку, экспорт или импорт не удался из-за лимита времени установленного хостером и возросшей нагрузки на сайт.
В случае с VPS — вы сами себе хозяин и сами устанавливаете все лимиты. Да и мощности виртуального сервера раз в 5 выше любого шаред хостинга.
- Если вам нужна универсальность, например, у вас есть много партнеров, которым нужно выгружать ваш прайс или, наоборот, у вас много поставщиков и нужно принять от них прайс и их формате и автоматически или вручную загрузить себе, то Ocext будет лучшим выбором или смотрите в сторону комбайна «Автоматическая обработка прайс-листов».
- Если ваша задача просто иногда вручную менять цены на товары или какие-то атрибуты не из админки, а из табличного файлика в OpenOffice, то рекомендую CSV Price Pro.
- Ну а если вам нужно просто массово копировать товары, куда-то переносить или делать бекап своих данных или просто нет лишних денег , то бесплатный Export/Import tool будет вполне нормальным решением для небольшого магазина.
Всех благ!
Полный импорт товаров из CSV-файла
Суть данного метода импорта в том, чтобы привести структуру CSV файла от вашего поставщика к стандарту 5CMS (название и перечень колонок с данными).
1) Получаем образец правильно заполненного CSV-файла:
Для этого сделаем экспорт любой категории товаров, где есть вложенные категории — напр. «Бытовая техника»
Админка > Автоматизация > Export CSV
Если у вас Windows и вы планируете работать в Экселе, то выберите кодировку Win-1251, а для MacOs — UTF-8
Полученный файл откройте в:
- Windows — Excel или LibreOffice
- MacOs — Numbers
Там вы увидите названия колонок:
Это и есть структура документа по которой CMS разбирает файл CSV при импорте.
2) Открываем рядом CSV-файл от вашего поставщика и копируем содержимое колонок в полученный ранее образец
Важно:
- В файле не должно быть колонок без названий
- Категория должна быть указана обязательно для каждого товара
- Названия колонок, начиная с «Категория» по «Изображения», переименовывать нельзя — это основные параметры товара. Расшифровка названий колонок.
- Любое другое название колонки трактуется как название свойства товара и соответственно добавляется в свойства товара.
- «Адрес» можно оставить пустым — он создастся автоматически
- Вложенные (дочерние) категории разделяются слешем, а не вложенные #
- Названия файлов изображений одного товара разделяются запятой. И в названиях файлах не рекомендуется использование кириллицы.
- Если путь до файлов указан полный (с http), то они автоматом загрузятся с сайта поставщика. Если-же поставщик предоставляет файлы изображений отдельно, то они заливаются через файловый менеджер (напр.: в панели хостинга) или FTP-клиент (напр.: Filezilla) в папку /files/originals/ (Важно! Без подпапок!)
- «Склад» — это остаток товара
- «Валюта» — ID валюты товара (должен соответствовать ID валюты, заведенной в админке: Настройки > Валюты)
- «Видим» — это активен или не активен товар
3) После того, как работы с файлом будут завершены — необходимо его сохранить как CSV (Важно! Убедитесь, что сохраняете с разделителем ; )
4) Затем в админке делаете импорт созданного вами CSV-файла:
Админка > Автоматизация > Import CSV
- Важно! Убедитесь, что на данной странице названия колонок пусты!
Если у вас что-то получается «не так», то:
Ошибка может быть вызвана либо невнимательностью (95% случаев) либо кривой структурой CSV-файла и ошибками в нем — например сместилось содержимое колонок.
Еще часто возникают ошибки из-за некорректной обработки файла Экселем. В таком случае воспользуйтесь альтернативными редакторами CSV, напр.: LibreOffice.
- Если вносите изменения в CSV-файл в Экселе, то учитывайте, что данная программа автоматически преобразовывает значения с «.» в дату, а также значения типа «0022» — в «22» т.е. отбразывает начальные нули. Чтобы этого избежать — воспользуйтесь подсказкой. Также в Экселе были случаи некорректной работы с кавычками.
Также проверьте ваш файл на соблюдение условий из п.2.
КАК ПРОВЕРИТЬ СТРУКТУРУ ВАШЕГО CSV-ФАЙЛА НА ОШИБКИ:
а) создаете тестовую категорию
б) создаете тестовый товар в админке и заполняете в нем все все так, как вам нужно (1-в-1 как у одного товара из файла, который вы пытаетесь импортировать)
в) делаете Экспорт именно этой тестовой категории
г) сверяете файлы полученный файл с вашим
д) ищете в какой ячейке(ах) несовпадение
А ЕСЛИ НУЖНО ТОЛЬКО ОБНОВИТЬ ЦЕНЫ?
Теги: как создать файл импорта товаров в CSV, автоматическое создание товаров, импорт товаров в формате CSV экспорт
Отправить ответ