Загрузка...

дравствуйте дорогие читатели блога Site on! Сегодня вас ждёт подробная инструкция о том, как с помощью бесплатного компонента для Joomla 2.5 — CSVI 5 можно организовать автоматический импорт и последующее обновление цен из вашего прайс-листа прямо в VirtueMart 2.

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

Для этого необходимо:

  • Скачать и установить последнюю версию компонента CSVI Free. В данный момент это 5.11.
  • Прайс-лист в формате Exel (.xls, .xlsx) или CSV (.csv)

Далее вы должны привести свой прайс-лист к такой структуре:

прайс-лист

А именно: одна строка – один товар. Количество столбцов может быть разным, в зависимости от того, какие свойства должен иметь ваш товар. Например, вы можете добавить столбец с мета-описанием и ключевыми словами для SEO или наоборот, убрать ненужные вам столбцы.

Импорт товаров. Способ №1

Порядок столбцов совершенно не важен!

Первая строка — это названия соответствующих свойств товара, в моём случае товар импортируется со следующими свойствами:

  • Категория товара (category_id)
  • Артикул (product_sku)
  • Название (product_name)
  • Полное описание (product_desc)
  • Цена (product_price)
  • Краткое описание (product_s_desc)
  • Опубликовать или нет (published: 1 или 0)
  • Производитель (manufacturer_id)

Насколько я помню столбец "Артикул" обязателен.

Где можно посмотреть названия всех свойств и обязательно ли называть ими столбцы - расскажу чуть позже.

После того как вы подготовили свой прайс-лист вы должны обязательно сохранить его как CSV (разделители - запятые) (*.csv). Кстати этот формат поддерживает только 1 лист в файле, то есть если у вас в Exel несколько листов, то сохраниться только текущий.

С подготовкой прайс-листа почти закончили, осталось только пересохранить его в формате UTF-8 без BOM, чтобы компонент CSVI смог прочитать русские символы.

Это можно сделать с помощью большинства редакторов кода, например, я пользуюсь для этого PSPad, думаю, в NotePad++ тоже есть такая возможность.

Кто не понял, что на данном этапе нужно сделать, прошу сюда: Перекодирование в UTF-8.

После перекодирования в вашем файле все русские символы сменяться на кракозябры:

прайс-лист в UTF-8

На этом прайс-лист готов, теперь заходим в настройки компонента, а именно в раздел Process (я оставил англоязычную версию) здесь настраиваем всё как у меня:

настройки CSVI

Жмём Go, и продолжаем сравнивать с моими настройками:

настройки 1

настройки 2

Вкладки Path и Limit можете не трогать вообще. Обычно в прайс-листах отсутствует колонка с перечислением фотографий к товару, поэтому вкладкой Image я тоже не пользовался. Несмотря на это вы должны знать, что фотографии таким образом тоже можно добавить, причём не по одной фотографии к товару, а все сразу. К сожалению, в VirtueMart не предусмотрено "родного" способа мультизагрузки фотографий к товару, только платные плагины. Поэтому это единственный бесплатный способ добавить одновременно несколько фотографий к товару, а не загружать по одной :)

Вкладку Fields мы тоже пропускаем, так как написали названия полей в самом прайсе.

Вот и всё, теперь выбираем наш прайс-лист:

загрузка

И жмём на кнопку Process, которая расположена вверху справо.

Импорт товаров. Способ №2

Я пользуюсь первым способом, однако на всякий случай расскажу вам второй вариант. Из прайс-листа можете удалить первую строчку, там, где мы писали названия столбцов. Вместо этого мы должны перечислить их в самом компоненте, во вкладке Fields.

При этом важно, чтобы порядок полей во вкладке Fields совпадал с порядком столбцов в вашем прайс-листе:

импорт с Fields

Заодно здесь вы можете узнать все доступные свойства и их названия.

После того, как вы создали все необходимые поля в настройках компонента, снова перейдите на вкладку File и измените параметр "Use headers/nodes as configuration" на "нет".

Кстати, вместо того чтобы удалять названия столбцов, здесь же вы можете установить параметр "Skip first line" в положение "да", в этом случае первая строчка вашего прайс-листа просто проигнорируется.

Когда вы выполнили все настройки компонента, вы можете их сохранить для повторного использования. Для этого нажмите "Save as". Я создал 2 шаблона, из названий понятно, в чём их разница:

шаблоны

Но как я уже сказал, одного вполне достаточно.

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

На самом деле про экспорт товаров в данной статье я упоминать не буду, возможно позже напишу об этом более интересную статью, чем банальный экспорт через CSVI.

А сейчас я хочу обратить внимания на более важную, как по мне, возможность рассматриваемого нами компонента. Это – обновление!

Итак, процедура обновления нечем не отличается от импорта, кроме того, что вы во вкладке File должны выставить параметр "Ignore non-existing items" в положение "да". Этот параметр запрещает создавать новые товары. Вообще никто не мешает вам обновить старые товары, и при этом добавить новые, просто лично я так не делаю.

Теперь, когда вы выставили Ignore non-existing items, то можете смело обновлять только те свойства товара, которые вам нужны, например, цену.

Это единственное свойство, которое я обновляю.

Для того, чтобы обновить цены вашего интернет магазина, вы должны оставить в вашем прайс-листе всего 2 столбца: артикул и цену, где артикул служит ключом (привязкой), вместо привычного id в базах данных.

Вот и всё, изменили один параметр, подготовили прайс-лист, а далее всё как при обычном импорте, выбираете документ и жмёте process.

{

}