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

Наша компанія займається розробкою, підтримкою та обслуговуванням рішень на Бітрікс та Бітрікс24 будь-якої складності. Від простих односторінкових сайтів до складних інтернет-магазинів, CRM систем з інтеграцією 1С та телефонії. Досвід розробників підтверджено сертифікатами від вендора.
Показано 1 з 1 послугУсі 1626 послуг
Міграція сайту з MODX на 1С-Бітрікс
Середня
~1-2 тижні
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851
  • 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
    585
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    751
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    657
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    989

Міграція сайту з 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 добре маппяться на властивості інфоблоку.