+7 988 353-52-54 kompman1@yandex.ru

г. Краснодар

Переезд с OpenCart на 100300 CMS: товары, покупатели с паролями и старые ссылки

Команда 100300 9 мин чтения

Пошаговый разбор переезда с OpenCart 3 и ocStore: как подключиться к старому магазину, во что превратятся опции и акции, что будет с паролями покупателей и адресами вида ?route=. В конце — честный список того, что не переносится.

Переезд с OpenCart на 100300 CMS: товары, покупатели с паролями и старые ссылки

Переезд с OpenCart на 100300 CMS делается бесплатным модулем «Переезд»: он сам забирает из OpenCart 3 или ocStore 3 категории, товары с опциями, покупателей со старыми паролями, заказы, отзывы и купоны, а на все старые адреса ставит 301-редиректы. Старый магазин при этом только читается и работает как обычно, пока вы не переключите домен. Сначала переносится 20 товаров на пробу, и только потом всё остальное.

Коротко:

  • Подключение к старому магазину — около 5 минут: файл-мост, дамп .sql или прямой доступ к базе.
  • Опции, которые меняют цену или ведут свой остаток, становятся вариантами товара; акции — ценой со старой ценой.
  • Покупатели входят со своими паролями: хэш OpenCart проверяется при первом входе и заменяется современным.
  • Адреса с ЧПУ и вида index.php?route=product/product&product_id=42 отвечают 301 на новые страницы.
  • Не переезжают: тема и модули OpenCart, текстовые опции и опции-файлы, второй и следующие языки.

Кому подходит и какие версии OpenCart поддерживаются

Модуль рассчитан на OpenCart 3.0.x и ocStore 3 — самую распространённую ветку в рунете. Если у вас OpenCart 2 или 4, файл-мост при проверке связи предупредит, что версия отличается и часть данных может не перенестись. Пароли покупателей из OpenCart 4 модуль понимает, но целиком эту ветку мы не обещаем — такой магазин лучше сначала прогнать пробным переносом и внимательно посмотреть отчёт.

Что нужно на новой стороне:

  1. Бесплатное ядро 100300 CMS на хостинге (PHP 8.3, MySQL 8). Новый сайт можно поднять на временном адресе, старый пока продолжает принимать заказы.
  2. Модуль «Интернет-магазин» — он платный (разовая лицензия на домен, год обновлений), у него есть пробный период.
  3. Модуль «Переезд» — бесплатный, без магазина не включается: переносить товары некуда.

Если вы ещё выбираете, куда уходить, сравнение платформ для владельцев OpenCart собрано на странице альтернатива OpenCart. Здесь — только про то, как переехать.

Три способа подключиться к старому магазину

Мастер открывается в админке: Магазин → Обмен данными → Переезд. На вопрос «Откуда переезжаете?» выбираете «OpenCart 3», затем способ подключения.

Мастер переезда с OpenCart в админке 100300 CMS: выбор источника и способа подключения
Мастер переезда: откуда, каким способом и что переносить.

Файл-мост — проще всего

Мастер даёт скачать один PHP-файл с секретным ключом именно вашего сайта. Вы кладёте его в корень старого магазина (туда, где лежит index.php) через файловый менеджер хостинга или FTP и вписываете его адрес в мастер. Настройки базы мост находит сам в config.php OpenCart.

  • Мост только читает: выполняет свои заранее заданные запросы и отдаёт данные порциями.
  • Ключ есть и в имени файла, и в каждом запросе; без HTTPS мост отказывает, если вы явно не разрешили обратное.
  • Работает даже на старом PHP 5.6 — у многих магазинов на OpenCart хостинг не обновлялся годами.
  • После переезда мастер предложит удалить мост одной кнопкой.

Дамп базы .sql

Если класть файлы на старый сайт не хочется: в phpMyAdmin откройте базу магазина → «Экспорт» → «Быстрый», формат SQL. Файл можно сжать в .gz или .zip. Мастер загружает дамп частями во временные таблицы, берёт из него только данные (команды из файла не выполняются) и удаляет всё после полного переноса.

Прямое подключение к MySQL

Сервер, имя базы, пользователь, пароль и префикс таблиц (у OpenCart обычно oc_) — всё это есть в config.php. Способ работает, если хостинг пускает к базе подключения снаружи; многие не пускают, тогда выручает мост. Пароль подключения хранится зашифрованным и в интерфейсе больше не показывается.

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

Что переносится из OpenCart

В OpenCartЧто станет в 100300 CMS
Категории (дерево)Категории магазина с той же вложенностью и SEO-полями
ПроизводителиБренды
Товары: описание, артикул, вес, цена, остаток, фотоКарточки товаров; фото скачиваются в медиатеку без дублей
АтрибутыХарактеристики — по ним работает фильтр каталога
Опции select, radio, checkbox, imageВарианты (если меняют цену или остаток) или характеристики
Акции (special) и скидки за количествоЦена + старая цена с датой окончания; ценовые ступени
ОтзывыОтзывы к товарам
Покупатели и адресаПокупатели; группы сопоставляются или создаются
Заказы с историейЗаказы со статусами, позициями, доставкой, оплатой и комментариями
КупоныПромокоды
Информационные страницыСтраницы сайта с SEO-полями
ЧПУ и адреса ?route=301-редиректы на новые адреса

Заказы и покупатели ложатся без писем и без списания остатков: клиенты не получат пачку уведомлений о заказах трёхлетней давности, а склад не уйдёт в минус.

Опции, цены и акции: как они превращаются в варианты

Это самое частое место, где переезды «руками» ломаются: в OpenCart цвет и размер — опции с надбавкой к цене, а в большинстве современных движков — варианты со своим артикулом, ценой и остатком. Модуль раскладывает их по правилам:

  • опции типов select, radio, checkbox и image, у которых значения меняют цену или ведут свой остаток, становятся вариантами. Если таких опций у товара несколько, создаются комбинации — до 200 на товар;
  • такие же опции без влияния на цену и остаток становятся характеристиками товара;
  • текстовые опции и опции-файлы («Текст для гравировки», «Загрузите макет») переносить некуда — мастер напишет о них в отчёте.

С ценами так: действующая акция группы покупателей по умолчанию становится ценой, а обычная цена — зачёркнутой старой, вместе с датой окончания акции. Скидки за количество той же группы превращаются в ценовые ступени («от 10 штук — дешевле»). Группы покупателей вы сопоставляете на шаге «Что переносить»: оптовикам можно сразу дать их группу со скидками или создать новую.

Если магазин мультиязычный, переносится основной язык (config_language), остальные мастер перечислит в предупреждении. Переводы потом добавляются уже в 100300 CMS.

Пароли покупателей OpenCart

OpenCart хранит пароль как sha1 с солью, в очень старых аккаунтах — как голый md5. Модуль переносит хэш как есть и помечает алгоритм. Когда покупатель входит впервые, пароль проверяется старым способом и сразу пересохраняется современным. Рассылать «задайте новый пароль» не нужно — для покупателя ничего не меняется.

Одно условие: не отключайте модуль «Переезд», пока покупатели не вошли хотя бы раз. Без него старый пароль проверить нечем. Вход по коду из письма и «Забыли пароль?» работают всегда, так что за дверью никто не останется.

Старые адреса OpenCart и SEO

Главный риск переезда для поиска — старые ссылки, которые начинают отдавать 404. Модуль запоминает адреса каждой перенесённой записи и отвечает на них редиректом 301:

  • все SEO-ключевые слова (ЧПУ) товаров, категорий, производителей и страниц — на всех языках, у категорий ещё и полным путём;
  • index.php?route=product/product&product_id=42 — в том числе с &path=…, &manufacturer_id=… и метками аналитики вокруг;
  • ?route=product/category&path=20_27 — берётся последняя категория пути;
  • ?route=product/manufacturer/info&manufacturer_id=5 и ?route=information/information&information_id=4.

Адреса без параметров попадают в обычный список Система → Редиректы — их видно, у каждого есть счётчик переходов. Адреса с ?route= обслуживает сам модуль, и они идут за товаром: переименуете карточку — редирект поведёт на новый адрес без цепочки. Title, description, keywords и H1 переносятся вместе с записями.

Редиректы помогают поисковику связать старый адрес с новым, но решение о позициях остаётся за ним — гарантировать, что они не шелохнутся, честно нельзя. Что ещё влияет на позиции и что проверить до переключения, разобрано в статье как не потерять позиции при смене CMS, а ручные правила и журнал 404 — в материале про 301-редиректы при смене CMS.

Пробный перенос, полный и повторный

В видео «Переезд с другой CMS за вечер» весь путь показан целиком. По шагам он выглядит так:

  1. Подключение. «Проверить подключение» — и мастер показывает, что нашёл: название магазина, версию, валюту, языки, число товаров, категорий, заказов.
  2. Что переносить. Отмечаете сущности, проверяете сопоставление статусов заказов (мастер угадывает их по названиям) и групп покупателей, курс, если валюта отличается, и приставку к занятым номерам заказов — например, OC-1024.
  3. Пробный перенос 20 товаров. Переносятся категории, бренды и первые 20 товаров. Откройте карточки и сверьте фото, варианты, цены со старыми, характеристики и вкладку SEO.
  4. Полный перенос. Идёт в фоне порциями, вкладку можно закрыть. Если связь оборвалась — «Продолжить с места остановки».
  5. Отчёт. Сколько добавлено, обновлено, пропущено, что не перенеслось и почему; отчёт можно скачать в CSV.
  6. Повторный запуск в день переключения. «Перенести снова» дозальёт новые заказы и изменённые цены: неизменённые записи пропускаются, изменённые обновляются, дублей не будет.

Не понравился результат пробы — поменяйте настройки и повторите: при полном переносе эти 20 товаров обновятся, а не задвоятся. Кнопка «Удалить перенесённое» убирает всё, что пришло с этого старого сайта, включая созданные переносом характеристики и фото; то, что было в магазине раньше, не трогается.

Что не переносится при переезде с OpenCart

  • Тема и модули OpenCart. У нового сайта свой шаблон и свои модули. Если в стороннем модуле OpenCart была важная логика (калькулятор, особая доставка), её придётся пересобрать.
  • Текстовые опции и опции-файлы. Проверьте заранее, есть ли они у ходовых товаров.
  • Второй и следующие языки. Переносится только основной.
  • Настройки оплаты и доставки. Подключаются заново: ЮKassa, Т-Банк, CloudPayments или Robokassa с чеками 54-ФЗ, курьер, самовывоз, зоны доставки.
  • Картинки внутри текстов страниц. Мастер скачивает фото товаров, а картинки, вставленные в описания и статьи, остаются ссылками на старые адреса вида /image/catalog/…. Простой выход — скопировать папку image старого магазина в папку public нового сайта с тем же путём.

Подробная справка по экранам мастера — в статье «Переезд с другой CMS» базы знаний.

Итог

Переезд с OpenCart — это вечер внимательной работы, а не месяц ручного переноса: подключились, проверили 20 товаров, запустили полный перенос, в день переключения запустили его ещё раз. Самое ценное — покупатели со своими паролями и 301 со всех старых адресов, включая ?route=. Если не хочется разбираться самим, перенос каталога, настройку шаблона, оплаты и доставки и проверку редиректов можно отдать нам — от 10 000 ₽. Оценить переезд бесплатно.

#OpenCart#Переезд магазина#301-редиректы

Вопросы и ответы

Пострадает ли старый магазин на OpenCart во время переезда?
Нет. Модуль «Переезд» только читает данные через файл-мост, дамп или подключение к базе. Старый магазин принимает заказы, пока вы не переключите домен.
Нужно ли что-то устанавливать на старый сайт?
Не обязательно. Проще всего положить один файл-мост, но можно загрузить дамп базы из phpMyAdmin или подключиться к MySQL напрямую.
Войдут ли покупатели со старыми паролями?
Да, если данные взяты из базы OpenCart. Пароль проверяется старым алгоритмом и при первом входе заменяется современным, сбрасывать ничего не нужно.
Поддерживается ли OpenCart 4 или OpenCart 2?
Модуль рассчитан на OpenCart 3.0.x и ocStore 3. На другой версии мост предупредит, что часть данных может не перенестись, поэтому начните с пробного переноса и изучите отчёт.
Сколько стоит переезд с OpenCart?
Модуль «Переезд» бесплатный, но ему нужен платный модуль «Интернет-магазин». Переезд под ключ с настройкой шаблона, оплаты, доставки и проверкой редиректов стоит от 10 000 рублей.