Подготовка CSV файла
CSV-файл (Comma Separated Values) – это файл с разделителями-запятыми.
Файлы этого формата можно создавать в различных программах, в том числе и в Microsoft Excel, 1С: Предприятие.
Если вы работаете с Excel, то вам необходимо сохранить ваш файл (прайс-лист) с товарам для импорта в интернет-магазин в формате CSV. Для этого нажмите "Сохранить как...", выберите тип файла "CSV (Разделители-запятые)", укажите имя файла и нажмите "Сохранить" – файл будет сохранен в формате CSV.
Если вы экспортируете список номенклатуры из 1С, сохраните его (список номенклатуры) как текстовый файл с разделителями табуляциями.
Процедура импорта CSV прайс-листов очень простая – вам необходимо просто следовать указаниям, изложенным ниже. Пожалуйста, прочтите их внимательно.
Чтобы сделать описание процедуры импорта файла более понятной, пожалуйста, с помощью Microsoft Excel откройте пример CSV-файла, который включен в состав магазина – это файл example_excel_import.csv в папке examples/. Или же, загрузите этот файл по адресу: /example_excel_import.csv
Рекомендуем вам прочесть следующие инструкции, предварительно открыв файл-пример.
Рекомендуем вам прочесть следующие инструкции, предварительно открыв файл-пример. Ячейки первой строки CSV таблицы (A1-Z1...) должны содержать названия параметров товара:
- Сортировка;
- Внутренний код (артикул);
- Наименование;
- Заголовок;
- Цена;
- Старая цена;
- Склад;
- Подробное описание;
- Краткое описание;
- Фотографии;
- Порядок сортировки;
- Тэг META keywords;
- Тэг META description;
- Стоимость доставки единицы товара;
- Вес;
- Бесплатная доставка;
- Ограничение на минимальный заказ товара;
- Файл;
- Количество дней для скачивания;
- Количество закачек (раз).
- Дополнительный параметр 1
- Дополнительный параметр 2
- и т.д.
Эти параметры описаны в разделах "Добавление новых товаров" и "Редактирование товара".
В CSV файле обязательно должны присутствовать столбцы "Название товара" и "Цена". Все остальные столбцы являются необязательными – отсутствие столбца означает, что соответствующее поле в базе данных останется без изменений (например, если столбца "В наличии на складе" нет в Вашем CSV файле, информация о товаре на складе останется без изменений после загрузки прайс-листа). Если в CSV файле отсутствует столбец ‘Название товара’ или ‘Цена’, вам не удастся надлежащим образом загрузить файл в свой магазин. Оба столбца должны обязательно присутствовать в файле.
Порядок столбцов в таблице может быть произвольным.
Кроме заранее заданных столбцов, вы можете добавить собственные, таким образом, вы добавите собственные дополнительные характеристики товаров в базу данных (подробнее о дополнительных характеристиках товаров смотрите раздел "Дополнительные параметры" ниже).
Формирование категорий/подкатегорий
Категории/подкатегории имеют следующие параметры: Корневая папка, Название, Логотип, Описание. В CSV файле вы можете указать каждый из этих параметров. Название должно быть обязательно указано в столбце "Название", а Логотип и Описание, которые определяются в столбцах "Фотография" и "Описание" соответственно, необязательны для заполнения. Чтобы программа распознала, что тот или иной ряд описывает категорию, а не товар, необходимо, чтобы в строке было заполнено поле "Название" (обязательно), и, по желанию, столбцы "Описание" и "Фотография" (необязательно), и при этом поле "Цена" должно быть незаполненным (обязательно). Столбец "Цена" для строки-категории должна быть пустой, иначе строка категории будет рассматриваться как товар.
Иерархию категорий вы можете определять следующим образом. Для того чтобы передвинуть категорию на один уровень вниз (превратить ее в подкатегорию), вам необходимо поставить восклицательный знак перед ее названием в ячейке. Например, у вас есть категория "Автомобили" и вам нужно, чтобы все автомобили марки BMW, находились в отдельной категории. В CSV файле строка (ряд) категории BMW должна следовать ниже строки для категории Автомобили, и название этой подкатегории должно выглядеть следующим образом "!BMW"
В дальнейшем, если вы захотите создать в этой категории подкатегории для различных серий BMW, вам необходимо поставить два восклицательных знака перед названиями подкатегорий: "!!Серия 3", "!!Серия 5". Таким образом, чем ниже вы хотите опустить категорию, тем больше восклицательных знаков вам необходимо поставить перед ее названием в ячейке.
Положение товаров в CSV прайс-листе
Как было сказано выше, первая строка CSV файла зарезервирована для определения столбцов, описывающих товары и категории – в этой строке необходимо указывать заголовки этих столбцов (Наименование, Цена и т.д.). Начиная со второй строки вы можете указывать категории и товары.
Каждый товар и каждая категория должны быть описаны в отдельной строке в файле. Скрипт проходит по вашему прайс-листу сверху-вниз и добавляет в базу данных по очереди все категории и товары.
Если в одном из рядов указать категорию (например, Samsung – см. скриншот ниже), то все товары, которые указаны ниже ее, будут добавлены в эту категорию – т.е. все товары, описанные до определения следующей категории.
Если никакая категория не была определена до описания товаров, то все товары будут добавлены в корневую категорию. Ниже представлен образец того, как приблизительно может выглядеть прайс-лист:

Все товары Samsung X640, X480 и т.д. будут добавлены в категорию Samsung.
Итак, сначала указываются названия категорий, а затем товары, входящие в них.
Изображения товаров
Все фотографии (изображения) товаров хранятся в папке pictures/. Непосредственно в CSV файле вы можете прикреплять изображения к товарам. Для этого в CSV файле создайте столбец «Фотографии»; в ячейках этого столбца необходимо через запятую указать имена файлов изображений товаров, которые могут быть трех форматов/размеров (см. «Изображения товара»). Порядок расположения имен в ячейках выглядит следующим образом:
«имя файла обычного изображения, имя файла увеличенной копии изображения, имя файла большой копии изображения».
Все имена должны быть указаны полностью, но без пути – вы должны указывать расширения файлов, но не указывать папку, где лежит тот или иной файл. Имена файлов разделяются запятой (,).
Например:
bmw_regular.jpg,bmw_thumb.jpg,bmw_enlarged.jpg.
Если вы укажите эти значения в столбце «Фотографии» для одного товара, то к этому товару будут прикреплены следующие изображения:
Обычное изображение: bmw_regular.jpg
Увеличенная копия: bmw_thumbnail.jpg
Большая копия: bmw_enlarged.jpg
Обратите внимание, что вы не должны добавлять пробелы или другие знаки после запятой - все имена должны следовать друг за другом одной строкой без пробелов. Вы можете добавить в файл несколько столбцов «Фотография», в которых задавать названия файлов с изображениями товаров – это дает возможность для одного товара определить сразу несколько изображений.
Например «Фотография 1», «Фотография 2», «Дополнительная фотография» и т.п.
Указания имени файла в таблице Excel недостаточно для автоматической загрузки изображений на сервер, так как это только «присоединит» изображение к товару.
После того, как вы импортировали Excel файл в магазин, вам необходимо загрузить изображения товаров на сервер (вручную) - все изображения должны быть загружены в следующие папки:
- data/small/ для файлов обычного изображения (используются для каталога товаров)
- data/medium/ для файлов среднего изображения (используются для подробного описания товаров)
- data/big/ для файлов увеличенного изображения (используются для просмотра во всю величину в подробном описании товаров)
(эти папки находятся в каталоге на сервере, куда вы установили скрипт). Загрузка (закачка) файлов изображений на сервер происходит точно также, как и загрузка самих скриптов при установке (например, с помощью FTP-клиента: ftpZilla, Windows Commander и др.).
Дополнительные параметры
Помимо предопределенных параметров товаров, перечисленных выше в разделе «Подготовка CSV файла», вы можете добавить любые другие параметры (характеристики) товаров при импорте.
Например, вам необходимо указать цвет какого-либо товара. В этом случае вы добавляете столбец под названием «Цвет» (в ячейку первой строки– аналогично ячейкам «Цена», «Название товара» и другим), а затем заполняете значение цвета товара в ячейке на пересечении строки этого товара и столбца «Цвет».
Для того, чтобы определить для данного товара фиксированный цвет, просто укажите его в этом поле, например, «красный», «черный».
Если же вы хотите указать, что для данного товара пользователь мог выбрать цвет из предопределенных значений, то укажите это, разделив значения для выбора запятой, и заключив строку в фигурные скобки следующим образом:
{значение=X[,значение=X]}
Здесь [] означают, что строка, содержащаяся внутри этих скобок, может отсутствовать или повторяться более одного раза.
значение – вариант для выбора пользователем;
X – изменение (прибавка) к стоимости товара, когда выбран этот параметр.
Если для какого-либо варианта выбора стоимость товара не должна изменяться (т.е. X=0), то можно не указывать =X.
Например, если вы введите для определенного товара в колонке «Цвет» следующий текст:
{белый=0,черный=2,синий=0,зеленый=-0.5,желтый=0}
или, что то же самое (=0 можно не указывать)
{белый,черный=2,синий,зеленый=-0.5,желтый}
то пользователь сможет выбирать значение цвета товара из следующих значений: белый, черный, синий, заланый, желтый. При этом, выбрав белый, синий или желтый, стоимость товара не изменится, однако если выбрать черный, то стоимость увеличится на 2 у.е., а если выбрать зеленый, то уменьшится на 0.5 у.е.
При импорте базы данных все дополнительные параметры и их значения сохраняются в базе данных, после чего вы можете редактировать их в режиме администрирования в разделе «Каталог» - «Характеристики товаров».
Импорт файла
Перед началом импорта вам предоставляется выбор: очистить базу данных или обновить ее. Если вы выберите «Очистить базу», все товары и категории, содержащиеся в базе данных, будут удалены. Для того чтобы обновить базу данных, необходимо указать путь к CSV файлу, который вы хотите обновить, выбрать разделитель в этом файле и затем нажать ОК. Далее система попросит связать столбцы CSV файла с полями товаров и категорий в базе данных:

ВАЖНО: Если такая таблица не будет показана или содержит не все столбцы, то это будет означать, что файл не был загружен правильно, и импорт продолжать нельзя. Убедитесь, что вы выбрали правильный CSV файл, а также разделитель файла.
Левая колонка содержит названия столбцов CSV файла, правая колонка содержит раскрывающийся список параметров, заданных по умолчанию, а также опции «игнорировать столбец» и «добавить как дополнительный параметр».
Выбрав для определенного столбца файла «игнорировать столбец», вы можете «пропустить» его - в этом случае при импорте скрипт проигнорирует этот столбец, и информация из него не будет добавлена в базу данных.
Опция «добавить как дополнительный параметр» позволяет добавлять параметр, который отсутствует по умолчанию. В левой колонке вы можете задать название этого параметра (например «Цвет», «Размер» и т.п.). Смотрите пример с параметром «Цвет», описанный выше (пункт «Дополнительные параметры»).
Важной особенностью в импорте CSV файлов является переключатель «Столбец идентификации» («Колонка идентификации») – уникальный идентификатор товара (этот переключатель применим только для товаров и не используется для категорий – для категорий столбцом идентификации всегда является «Наименование»). При помощи раскрывающегося меню можно выбрать столбец, содержащий уникальную информацию о товаре. Вам предоставляется возможность выбрать между опциями «Внутренний код (артикул)», «Наименование», «Цена», «Описание», «Краткое описание» и «Порядок сортировки».
Значение в этом столбце вашего CSV файла должно быть уникальным (различным для каждого товара, т.е. для каждой строки). Будьте внимательны, выбирая столбец идентификации при импорте. Неправильный выбор может привести к непредвиденным результатам. После нажатия «ОК» программа начинает импортировать данные из Вашего файла. Скрипт обрабатывает все строки в файле следующим образом:
Файл обрабатывается от первой и до последней строки («сверху-вниз»). Одна строка может быть обработана двумя способами:
1. Если в строке CSV файла определены значения в столбцах «Имя» (обязательно) и - что допустимо, но не обязательно - «Описание» и «Изображение», а значение колонки «Цена» не указано (пустая ячейка), в этом случае данная строка рассматривается как категория. Программа осуществляет поиск категории с таким же названием в базе данных.
Если категория найдена, ее описание обновляется и категория маркируется как «выбранная» (или же новая категория добавляется и маркируется как «выбранная»). Категории добавляются в магазин из CSV файла в соответствии с иерархией, которую вы предустановили, используя символ «!» (см. пункт «Подготовка CSV файла»).
2. Если в строке указаны колонки «Имя» и «Цена», данная строка рассматривается как товар. Программа осуществляет поиск товара в базе данных с таким же значением столбца идентификации во всех категориях. Если товар найден, информация о нем обновляется, если нет - добавляется новый товар. Все товары помещаются в «выбранную» категорию.
Для того, чтобы сделать процесс импортирования таблиц Excel более наглядным, мы включили образец Excel файла в состав архива. Этот файл находится в папке примеров examples/example_excel_import.csv в директории, куда вы установили скрипты.
Откройте этот файл в Microsoft Excel и посмотрите пример структуры файла прайс-листа. Попробуйте поработать с импортом CSV файлов при помощи этого образца.
ВАЖНО: Не забывайте указывать категории в Вашем прайс-листе. Если вы будете добавлять только товары в прайс-лист (без категорий), то все товары будут автоматически добавлены в корневую категорию магазина и, таким образом, не будут «видны» в пользовательской части магазина. |