Миграция сайта с MODX на 1С-Битрикс

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Миграция сайта с MODX на 1С-Битрикс
Средняя
~1-2 недели
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1167
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    563
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    743
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Миграция сайта с MODX на 1С-Битрикс

MODX Revolution — популярная CMS для разработчиков. Гибкая система шаблонов, Snippets, Chunks, TV-переменные — всё это позволяет собрать практически любой сайт. Но когда бизнес требует полноценного интернет-магазина с 1С-интеграцией или корпоративного портала с CRM — MODX начинает ограничивать. Переход на Битрикс решает задачу, но требует понимания обеих систем.

Модель данных MODX

MODX Revolution хранит контент в нескольких ключевых таблицах (префикс по умолчанию modx_):

  • modx_site_content — все ресурсы сайта: страницы, статьи, папки. Поля: id, pagetitle, longtitle, alias, content, introtext, parent, template, published, publishedon, createdby, createdon, menutitle, description, content_type, uri.
  • modx_site_tmplvar_contentvalues — значения TV-переменных для ресурсов: tmplvarid, contentid, value.
  • modx_site_tmplvars — определения TV-переменных: name, caption, type, elements, default_text.
  • modx_site_templates — шаблоны.
  • modx_users, modx_user_attributes — пользователи.
  • modx_categories — категории снипетов/чанков (не контента).

Для магазинов на miniShop2: msProduct, msProductOption, msCategory, msOrder, msOrderProduct — это кастомные таблицы расширения.

Дерево страниц

MODX строит сайт как дерево ресурсов. Каждый ресурс — потенциально страница. В Битрикс такого понятия нет: структура сайта определяется физическими файлами в директориях + система управления структурой в административной части.

Статические страницы MODX (корпоративный сайт, разделы «О компании», «Контакты») переносятся двумя способами:

  1. Как страницы Битрикс — создаём PHP-файлы в нужных директориях, контент прописываем через $APPLICATION->SetPageProperty() и компоненты.
  2. Как элементы инфоблока — если страниц много и они однотипные (например, блог).

TV-переменные → свойства инфоблока

TV-переменные (Template Variables) — аналог свойств инфоблока в Битрикс. Читаем все TV из modx_site_tmplvars и проектируем соответствующие свойства:

TV-тип MODX Свойство Битрикс
text Строка
textarea / richtext HTML/текст
image Файл (изображение)
file Файл
listbox-multiple / checkbox Список (множественное)
date Дата/время
number Число

Перенос контента

Скрипт читает modx_site_content и для каждого ресурса нужного типа:

  1. Определяет раздел инфоблока по parent (рекурсивно строим дерево разделов заранее).
  2. Собирает TV-значения через JOIN modx_site_tmplvar_contentvaluesmodx_site_tmplvars.
  3. Создаёт элемент инфоблока через CIBlockElement::Add().

Поле uri в MODX — это готовый ЧПУ-адрес ресурса. Его сохраняем как CODE элемента и используем для формирования 301-редиректов.

Изображения. В TV-переменных типа image хранится путь вида /assets/images/photo.jpg. Копируем файлы на сервер Битрикс, регистрируем через CFile::MakeFileArray().

miniShop2 → Битрикс Каталог

Если на MODX стоял miniShop2:

  • msProduct (JOIN к modx_site_content) → элементы инфоблока каталога Битрикс.
  • msProductOption — опции товара (цвет, размер) → торговые предложения.
  • msCategory → разделы инфоблока.
  • msOrder / msOrderProductb_sale_order / b_sale_basket.
  • Цены из msProduct.priceb_catalog_price с нужным типом цены.

Чанки, сниппеты и шаблоны

Чанки (modx_site_htmlsnippets) и сниппеты (modx_site_snippets) — это код шаблонизатора MODX (Smarty / Twig или нативный PHP). Они не переносятся автоматически. Весь функционал реализуется заново через компоненты Битрикс. Это самый трудоёмкий этап, если сайт использовал сложные сниппеты (pdoMenu, pdoPage, FormLister и т.п.).

SEO

MODX при включённом friendly_urls строит URL по полю uri. Если на сайте использовался AliasListing — URL мог включать полный путь из дерева. Собираем маппинг old_uri → new_url и прописываем редиректы.

Сроки

Этап Типовые сроки
Аудит структуры MODX, TV, расширений 1 день
Проектирование инфоблоков и маппинг TV 1 день
Разработка скрипта миграции контента 2–3 дня
miniShop2 (при наличии) 2–4 дня
Изображения и медиафайлы 1 день
Редиректы и SEO 1 день
Тестирование 1 день
Итого 7–11 рабочих дней

Без miniShop2 миграция с MODX достаточно быстрая — структура данных понятная, TV хорошо маппятся на свойства инфоблока.