Быстрые ссылки

Товары в OpenCart: импорт из Excel/1С, атрибуты, опции и фильтры

Каталог — фундамент магазина. Если товары заведены небрежно, не работают фильтры, страдает SEO, а каждый импорт превращается в ручную чистку. В OpenCart есть несколько сущностей, которые часто путают: атрибуты, опции, фильтры, производители. Разберу, что для чего, как загрузить товары массово и как не испортить каталог.

Структура каталога

Категории

  • Не делайте больше трёх уровней вложенности — покупатель теряется, а адреса становятся длинными.
  • Каждая категория — под реальный поисковый спрос: «Ламинат 33 класса» лучше, чем «Разное».
  • Один товар может быть в нескольких категориях, но основная должна быть одна — она используется в хлебных крошках и адресе в ocStore.

Производители

Поле «Производитель» в OpenCart — отдельная сущность со своей страницей. Используйте его для брендов: страницы брендов собирают запросы вида «ламинат Kronospan».

Атрибуты, опции и фильтры: в чём разница

Сущность Для чего Пример
Атрибут Характеристика товара для описания и сравнения Толщина: 8 мм, Класс: 33
Опция Выбор покупателя при заказе, может менять цену и остаток Размер: S, M, L
Фильтр (стандартный) Метка для фильтрации в категории Цвет: дуб, орех

Атрибуты

Атрибуты объединяются в группы: «Основные характеристики», «Размеры». Значение атрибута у каждого товара — текст. Это важно: «8 мм» и «8мм» для системы — разные значения, и в фильтре они появятся отдельно. Договоритесь о едином формате до импорта.

Опции

Опция — это то, что выбирает покупатель: размер, цвет, комплектация. У каждого значения опции может быть свой остаток, своя наценка и свой вес. Если у вас «футболка в трёх размерах», это один товар с опцией, а не три товара.

Фильтры

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

Импорт товаров из Excel

Стандартного импорта в OpenCart нет, поэтому используют модули импорта и экспорта. Порядок работы одинаковый для большинства:

  1. Экспортируйте несколько товаров, заведённых вручную. Так вы получите шаблон файла с правильными колонками.
  2. Заполните таблицу: артикул, название, категория, цена, количество, производитель, описание, атрибуты, изображения.
  3. Проверьте ключ сопоставления. Обычно это артикул (model или sku) — по нему модуль понимает, обновить существующий товар или создать новый.
  4. Загрузите сначала 10–20 товаров на копии магазина и проверьте результат в карточке и в категории.
  5. Загрузите весь файл.

Изображения

Модули импорта принимают либо путь к файлу на сервере (catalog/products/12345.jpg), либо ссылку на изображение, которое нужно скачать. Удобнее заранее загрузить фото по FTP в отдельную папку и назвать файлы по артикулу.

Типичные ошибки импорта

  • Разные написания одной категории: «Ламинат» и «ламинат » с пробелом создают две категории.
  • Цена с пробелами и знаком валюты — модуль запишет 0.
  • Excel превращает артикулы вида 00123 в 123 и длинные числа в формат 1,23E+12. Задавайте колонке текстовый формат.
  • Кодировка CSV не UTF-8 — вместо кириллицы появляются знаки вопроса.
  • Описание с переносами строк ломает структуру CSV, если не взято в кавычки.

Импорт из 1С

Если товары ведутся в 1С, ручной импорт не нужен: каталог, цены и остатки выгружаются автоматически через модуль обмена по CommerceML. Общий принцип и подводные камни — в статье об интеграции сайта с 1С. Важное для OpenCart:

  • характеристики из 1С становятся атрибутами — проверьте, в какую группу атрибутов модуль их складывает;
  • характеристики номенклатуры (размер, цвет) могут превращаться в опции — настройте это в модуле;
  • решите, обновляются ли из 1С названия и описания, иначе ручные SEO-тексты будут перезаписаны.

SEO-поля товаров и категорий

В ocStore и OpenCart с SEO-модулем у каждого товара и категории есть:

  • SEO URL — адрес латиницей, без пробелов и спецсимволов: laminat-kronospan-8mm;
  • meta title и meta description;
  • H1 (в ocStore — отдельное поле).

Для тысяч товаров вручную это не заполнить. Используйте шаблоны: title = «Название — купить в Минске, цена | Магазин». Модули SEO-шаблонов или импорт с колонками SEO решают задачу массово. Важно, чтобы SEO URL генерировался один раз и не менялся при повторных импортах.

Остатки и наличие

  • Задайте статусы «Нет в наличии», «Под заказ», «Ожидается» в Система — Локализация — Статусы на складе.
  • Включите или отключите оформление заказа при нулевом остатке в настройках магазина.
  • Не удаляйте закончившиеся товары: страница теряет позиции в поиске. Лучше показывать статус и похожие товары.

Как навести порядок в существующем каталоге

Если каталог уже заполнен хаотично:

  1. Выгрузите все товары с атрибутами в Excel.
  2. Отсортируйте по названию атрибута и значению — сразу видны дубли написаний.
  3. Приведите значения к единому формату.
  4. Загрузите обратно, обновляя по артикулу.
  5. Проверьте фильтры в нескольких категориях.

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

Производительность большого каталога

  • При 10 000 товаров и больше включайте кэш модуля фильтра.
  • Отключите подсчёт количества товаров в категориях в настройках магазина — он делает тяжёлые запросы на каждой странице.
  • Миниатюры генерируются при первом просмотре — после массового импорта первые открытия категорий будут медленными. Можно прогреть кэш изображений обходом сайта.
  • Удалите неиспользуемые атрибуты и опции.

Пример структуры файла импорта

Минимальный набор колонок, с которым удобно работать большинству модулей:

Колонка Пример Комментарий
model KR-8-33-OAK Артикул, ключ сопоставления
name Ламинат Kronospan 8 мм дуб Название без лишних слов
category Ламинат > 33 класс Путь категории через разделитель
manufacturer Kronospan Совпадает с существующим брендом
price 32.50 Число с точкой, без валюты
quantity 120 Целое число
image catalog/laminat/KR-8-33-OAK.jpg Путь к загруженному фото
attr:Толщина 8 мм Значение атрибута в едином формате

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

Когда нужен разработчик

Самостоятельно завести каталог на несколько сотен товаров вполне реально. Помощь нужна, когда:

  • нужно регулярно загружать прайсы нескольких поставщиков с разной структурой;
  • каталог уже испорчен дублями и мусорными атрибутами;
  • требуется обмен с 1С с опциями и несколькими складами;
  • импорт или фильтр тормозят на большом каталоге.

Совет по изображениям товаров

Снимайте или запрашивайте у поставщика фото на однотонном фоне в одинаковом соотношении сторон, например квадрат. Тогда карточки в категориях выглядят ровно, а миниатюры не обрезаются неожиданно. Перед загрузкой уменьшайте фото до 1500–2000 пикселей по большей стороне.

Чек-лист каталога OpenCart

  1. Категории до трёх уровней, под поисковый спрос.
  2. Производители заведены как бренды.
  3. Атрибуты в едином формате, сгруппированы.
  4. Опции — для выбора покупателя, с остатками.
  5. Модуль фильтра строится по атрибутам.
  6. Импорт по артикулу, проверен на копии.
  7. SEO URL и мета-теги по шаблону.
  8. Закончившиеся товары не удаляются.

Частые вопросы

Чем атрибут отличается от опции?

Атрибут — это характеристика для описания и фильтра, покупатель её не выбирает. Опция — то, что покупатель выбирает при заказе, она может менять цену и остаток.

Какой модуль импорта выбрать?

Тот, что поддерживает вашу версию OpenCart, работает с атрибутами и опциями и умеет обновлять товары по артикулу. Проверяйте на копии магазина на небольшом файле.

Можно ли загрузить товары с сайта поставщика?

Если поставщик даёт файл выгрузки в Excel, CSV или XML — да, с настройкой сопоставления полей. Копировать чужие описания без изменений нежелательно для SEO.

Почему после импорта фильтр показывает одинаковые значения дважды?

Значения атрибутов отличаются написанием: пробелами, регистром, единицами измерения. Приведите их к единому формату и загрузите заново.

Нужна помощь?

Если не хочется разбираться самому или не получилось — напишите мне. Посмотрю задачу и скажу, что нужно сделать, сколько это займёт и сколько будет стоить.

Доработка OpenCartНаписать в TelegramНаписать в Viber

Leave a comment