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

г. Краснодар

Переезд с WordPress и WooCommerce: товары, заказы и записи блога без потерь

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

Как уйти с WooCommerce и ничего не растерять: ключи REST API за две минуты, вариации, заказы в HPOS и в старом формате, мета-теги Yoast и Rank Math, записи блога с рубриками. И честно — чего API не отдаёт и когда нужен мост или дамп.

Переезд с WordPress и WooCommerce: товары, заказы и записи блога без потерь

Переезд с WooCommerce на 100300 CMS делается бесплатным модулем «Переезд»: по ключам REST API, без единого файла на старом сайте, он забирает категории, бренды, товары с вариациями, отзывы, покупателей, заказы, купоны, страницы и записи блога, мета-теги Yoast и Rank Math и ставит 301 со старых адресов. Пароли покупателей и SEO-поля товаров API не отдаёт — для них есть файл-мост или дамп базы. Ниже — что нажать в WordPress, что получится и где подстраховаться.

Коротко:

  • Основной способ — ключи REST API WooCommerce с правами «Чтение»; запасные — файл-мост, дамп .sql, прямое подключение к базе.
  • Вариации становятся вариантами со своими ценами, остатками и фото; распродажи по датам — ценой со старой ценой.
  • Заказы читаются и из HPOS, и из классических таблиц.
  • Записи блога переезжают в «Блог» с рубриками, метками, автором и исходной датой.
  • Через API не придут пароли, черновые страницы и Yoast товаров — нужен мост или дамп.

Что нужно для переезда с WooCommerce: ключи REST API

На новой стороне — бесплатное ядро 100300 CMS, платный модуль «Интернет-магазин» (разовая лицензия на домен) и бесплатный «Переезд». На старой — только ключи API. Получить их:

  1. В админке WordPress откройте WooCommerce → Настройки → Дополнительно → REST API.
  2. Нажмите «Добавить ключ». Описание — любое, пользователь — администратор, права — «Чтение».
  3. Скопируйте Consumer key (начинается с ck_) и Consumer secret (cs_). Они показываются один раз.
  4. В новом сайте: Магазин → Обмен данными → Переезд → «WooCommerce» → «Через API». Вставьте адрес магазина с https:// и оба ключа.
  5. «Проверить подключение» — мастер покажет, сколько нашёл товаров, заказов, покупателей, записей, и предупредит, чего API не отдаст.
Переезд с WooCommerce в мастере 100300 CMS: выбор источника и подключение по REST API
Мастер переезда: источник, способ подключения и что переносить.

Ключи с правом только на чтение ничего не могут изменить в старом магазине. Хранятся они зашифрованными и в интерфейсе больше не показываются. Если на сайте не включены «красивые» постоянные ссылки или сервер теряет заголовок авторизации, мастер сам подберёт рабочий вариант запроса.

Если подключение по API не проходит

  • Ошибка доступа: ключ не принят. Проверьте, что скопированы оба ключа целиком, без пробелов, и что ключ создан от имени администратора.
  • Магазин не найден по адресу. Адрес — главная страница WordPress с https://, без /wp-admin и /shop на конце.
  • Сайт закрыт защитой от ботов или паролем на весь сайт. Плагины безопасности и «режим обслуживания» иногда режут запросы к /wp-json/. Временно разрешите их или подключитесь мостом.
  • Сайта на WordPress уже нет, остался только архив. Тогда путь один — дамп базы из архива: мастер найдёт таблицы WooCommerce по префиксу сам. Но фото скачиваются по адресам сайта, поэтому поднимите копию старого сайта хотя бы на время переноса или укажите в «Дополнительно» другой адрес, откуда брать картинки.

Товары и вариации WooCommerce

  • Атрибуты для вариаций становятся осями вариантов (цвет, размер), остальные атрибуты — характеристиками для фильтра. Значения глобальных атрибутов (pa_*) переносятся по названиям.
  • Вариации — варианты со своим артикулом, ценой, остатком, весом и фото. Выключенные вариации не переносятся; ось со значением «любое» у вариации просто опускается.
  • Распродажа по датам — цена распродажи становится ценой, обычная — зачёркнутой, дата окончания сохраняется.
  • Остатки — если включено управление запасами; вариация без своего остатка делит остаток товара.
  • Вес и габариты — в единицах, заданных в магазине; GTIN — в штрихкод.
  • Бренды — встроенные бренды WooCommerce 9.6+ и таксономии популярных плагинов брендов.
  • Фото — главное и галерея, скачиваются по адресам /wp-content/uploads/… без дублей.
  • Отзывы — с рейтингом; первый одобренный ответ становится ответом магазина.

Начните с пробного переноса 20 товаров: откройте пару товаров с вариациями и сверьте сочетания, цены и фото со старыми карточками.

Заказы WooCommerce (в том числе HPOS) и покупатели

В WooCommerce два способа хранить заказы: новый HPOS (отдельные таблицы заказов) и классический — как записи WordPress. Модуль понимает оба: при подключении к базе сам смотрит, что включено, а через API формат хранения не важен.

  • Заказ переносится с позициями (выбранные атрибуты — «Цвет: Красный»), сборами отдельной строкой, доставкой, оплатой, адресами и номером. Если стоял плагин последовательных номеров — с его номером.
  • Заметки к заказу становятся историей: «Статус заказа изменён с X на Y» — сменой статуса, остальные — комментариями.
  • Черновики оформления (брошенные на шаге оплаты) не переносятся.
  • Покупатели — пользователи WordPress без ролей сотрудников (администратор, редактор, автор, менеджер магазина), с адресами оплаты и доставки.
  • Купоны — процент, фиксированная скидка, бесплатная доставка, минимальная сумма, лимиты, срок, товары и категории.

Заказы ложатся без писем покупателям и без списания остатков. Статусы сопоставляются на шаге «Что переносить», мастер угадывает их по названиям.

Yoast и Rank Math: SEO-поля при переезде

Мета-теги — то, что чаще всего теряют при уходе с WordPress: они живут в плагине, а не в самом товаре. Модуль читает поля Yoast SEO и Rank Math и подставляет их переменные — %%title%%, %%sep%%, %%sitename%% и аналоги Rank Math превращаются в готовый текст. У категорий берутся мета-теги терминов.

Нюанс в способе подключения. Через REST API Yoast отдаёт мета-теги категорий, страниц и записей, но не товаров. Если у вас прописаны title и description для сотен карточек и они приносят трафик, используйте файл-мост или дамп — тогда SEO товаров переедет полностью. Если поля товаров пустые или собраны шаблоном, разницы нет: в 100300 CMS пустые поля заполняются по шаблону из настроек SEO.

Страницы и записи блога WordPress

Это то, чего нет в типичных сервисах миграции магазинов: блог переезжает вместе с каталогом.

  • Записи попадают в раздел «Блог» (бесплатный модуль ядра должен быть включён). Рубрики, метки и автор находятся по названию или создаются; первая рубрика — главная. Дата публикации — со старого сайта, поэтому архив не «помолодеет».
  • Страницы переезжают со своими адресами и SEO, кроме страниц магазина, корзины, оформления заказа и аккаунта — у нового сайта они свои.
  • Содержимое очищается от служебной разметки: комментарии блочного редактора и шорткоды убираются. Значит, формы Contact Form 7, галереи и слайдеры на шорткодах исчезнут — формы собираются заново в конструкторе форм.
  • Картинки внутри текстов мастер не скачивает: они остаются ссылками на /wp-content/uploads/…. Пока старый сайт жив, всё показывается. Перед переключением домена скопируйте папку wp-content/uploads в папку public нового сайта с тем же путём — и старые адреса картинок продолжат открываться.

Как устроен блог в 100300 CMS — рубрики, оглавление, FAQ, комментарии — описано в справке «Блог».

Чего API не отдаёт и как это обойти мостом или дампом

ДанныеREST APIФайл-мостДамп .sql / база
Категории, бренды, товары, вариацииДаДаДа
Заказы, покупатели, купоны, отзывыДаДаДа
Опубликованные страницы и записиДаДаДа
Черновые страницыНетДаДа
SEO-поля товаров (Yoast)НетДаДа
Пароли покупателейНетДаДа
Нужно ли что-то класть на старый сайтНетОдин файлНет (дамп из phpMyAdmin)

Файл-мост — один PHP-файл с ключом вашего сайта, который кладётся в корень WordPress. Настройки базы он берёт из wp-config.php, только читает и удаляется кнопкой после переезда. Дамп выгружается в phpMyAdmin и загружается в мастер частями.

Про пароли. Из таблиц модуль переносит хэши WordPress всех поколений — phpass до версии 6.7, bcrypt 6.8+, совсем старый md5 — и проверяет их при первом входе покупателя. Через API хэшей нет: такие покупатели войдут по коду из письма или зададут пароль через «Забыли пароль?». Предупредите их об этом рассылкой.

Старые адреса WooCommerce: ЧПУ, ?p= и категории

Модуль строит старые адреса так, как их строил WordPress, и ставит 301 на новые страницы:

  • товары — по базе из настроек постоянных ссылок, в том числе с %product_cat% в пути;
  • категории и бренды (/product-category/…, /brand/… или ваши базы);
  • страницы с родителями и записи — по структуре постоянных ссылок;
  • адреса с параметрами: ?p=, ?page_id=, ?post_type=product&p=, ?product=, ?product_cat=.

Через API берутся ровно те адреса, что отдаёт WordPress. Как проверить редиректы после запуска и что делать с адресами, которых нет в базе, — в статье 301-редиректы при смене CMS. Шире про риски для позиций — как не потерять позиции при смене CMS.

После полного переноса остаётся то, что не живёт в базе WooCommerce: способы оплаты (ЮKassa, Т-Банк, CloudPayments, Robokassa с чеками 54-ФЗ), доставка, письма покупателям, формы и счётчики аналитики. Плагины WordPress не переносятся — для каждого важного найдите замену среди возможностей нового сайта заранее, ещё на этапе пробы. Если удобнее отдать весь путь целиком, на странице переезда магазина описано, что входит в перенос под ключ.

Итог

С WooCommerce уходить проще всего: ключи API делаются за пару минут, а модуль забирает и магазин, и блог с мета-тегами. Если важны пароли покупателей или SEO-поля товаров — подключайтесь мостом или дампом. Не забудьте про картинки внутри статей и формы на шорткодах. Почему вообще уходят с WooCommerce и чем отличается магазин из коробки, — на странице альтернатива WooCommerce. Попробовать перенос можно бесплатно: поставьте ядро на хостинг и сделайте пробный перенос 20 товаров. Скачать бесплатное ядро.

#WooCommerce#WordPress#Переезд магазина

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

Какие права давать ключу REST API WooCommerce?
Только «Чтение». Модулю достаточно читать данные, а ключ с таким правом ничего не изменит в старом магазине.
Перенесутся ли пароли покупателей WordPress?
Да, если подключиться файлом-мостом, дампом или напрямую к базе. Через REST API хэшей нет, тогда покупатели войдут по коду или через «Забыли пароль?».
Сохранятся ли мета-теги Yoast и Rank Math?
Да, переменные вроде %%title%% подставляются в готовый текст. Мета-теги товаров из Yoast переезжают только через мост или дамп, API их не отдаёт.
Переедут ли записи блога?
Да, в раздел «Блог» с рубриками, метками, автором и исходной датой публикации. Шорткоды и формы плагинов из текста убираются.
Работает ли перенос с HPOS?
Да. Модуль читает заказы и из таблиц HPOS, и из классического хранения, а через API формат хранения не важен.