Почему миграция на новую версию 1С-Битрикс — это не простая задача
Клиент жалуется: после обновления ядра сайт падает с белым экраном. Адаптация шаблонов каталога занимает недели. Знакомая ситуация? Один из наших клиентов — интернет-магазин с 15 000 товаров и кастомной интеграцией с 1С — пытался обновиться самостоятельно и потерял две недели на отладку белого экрана. После обращения к нам миграция заняла три дня, а простой продакшена не превысил четырёх часов. Мы помогаем компаниям перенести сайты на актуальные версии 1С-Битрикс без потери данных и падения позиций. Это не просто кнопка «Обновить» — за годы работы накапливаются нестандартные модули, устаревшие API, шаблоны на старом ядре. Без подготовки обновление может закончиться катастрофой. Наш подход — поэтапная миграция с тестовым стендом и возможностью отката. Мы гарантируем бесшовный переход и экономию до 30% бюджета за счёт предотвращения простоев. Окупаемость миграции достигается за счёт повышения производительности и снижения затрат на поддержку.
Что меняется между версиями?
Битрикс активно мигрирует со старого ядра (D5/kernel) на D7. Ключевые поломки при обновлении:
- Старый API каталога (CIBlockElement, CCatalog) заменяется на ORM-классы Bitrix\Iblock\ElementTable, Bitrix\Catalog*
- CUser частично заменён на \Bitrix\Main\User* — методы авторизации изменились
- Компонент bitrix:catalog в новых версиях переработан с поддержкой SKU, старые шаблоны требуют адаптации
- Модуль sale — версия 17+ изменила архитектуру заказа (Order, Basket, Shipment — объекты вместо массивов)
- PHP — последние версии Битрикс требуют PHP 8.0+, старый код с preg_replace('/e', ...) и each() падает
Официальная документация 1С-Битрикс рекомендует перед обновлением провести полный аудит кода. Наш метод обновления вдвое быстрее самостоятельного за счёт автоматизированных скриптов проверки совместимости. Источник: официальный сайт 1С-Битрикс.
Почему обновление требует тестового стенда?
Тестовый стенд — это полная копия сайта на отдельном сервере или домене. Здесь мы проводим все опасные операции, не рискуя продакшеном. Без стенда вы рискуете получить простой на несколько дней. Мы поднимаем стенд за несколько часов, синхронизируем базу данных и файлы, затем поэтапно обновляем систему. Каждый шаг фиксируется, и при ошибке мы откатываемся на предыдущую версию. Это позволяет выявить все проблемы до переноса.
Как подготовить кастомные модули к миграции?
Кастомные модули — главная головная боль при обновлении. Для каждого модуля из Маркетплейса проверяем совместимость на портале разработчика. Если обновления нет — связываемся с автором или переписываем функционал. Для своих модулей проводим рефакторинг: заменяем устаревшие вызовы на D7 ORM. Например:
// Было (старое ядро): $dbResult = CIBlockElement::GetList([], $filter, false, false, $select); // Стало (D7 ORM, современные версии Битрикс): $result = \Bitrix\Iblock\ElementTable::getList([ 'filter' => $filter, 'select' => $select, ]); Адаптация шаблонов каталога занимает 40–60% всего времени миграции. В новых версиях компонента bitrix:catalog структура $arResult изменилась — переменная $arResult['ITEMS'] заменена на $arResult['CATALOG_ITEMS'] с новой структурой торговых предложений.
Этапы миграции: от аудита до продакшена
Этап 1. Аудит текущего состояния. Перед любым обновлением — полная инвентаризация:
- Список нестандартных модулей (/local/modules/, /bitrix/modules/ — кастомные), включая инфоблоки (v2.0), HL-блоки, агенты и события
- Список модулей из Маркетплейса с проверкой совместимости с целевой версией
- Кастомные шаблоны компонентов в /local/templates/ и /bitrix/templates/
- Использование устаревших функций:
grep -r "CIBlockElement::" /local/ --include="*.php" - PHP-версия на сервере
Этап 2. Тестовый стенд. Поднимается полная копия сайта на отдельном сервере или домене. На стенде:
- Делается резервная копия файлов и базы данных
- Выполняется поэтапное обновление через административную панель (Обновление системы)
- Фиксируются все ошибки из /bitrix/cache/ и логов PHP
Этап 3. Совместимость модулей. Для каждого стороннего модуля из Маркетплейса — проверить версию совместимости на портале разработчика. Если обновления нет — связаться с разработчиком или переписать функционал. Для кастомных модулей — ручная адаптация.
Этап 4. Адаптация шаблонов. Шаблоны компонентов каталога — главная точка боли. В новых версиях компонент bitrix:catalog сменил структуру $arResult. Переменная $arResult['ITEMS'] заменена на $arResult['CATALOG_ITEMS'] с новой структурой торговых предложений. Адаптация шаблона каталога занимает 40–60% всего времени миграции.
Этап 5. Тестирование функциональности. Проверяем все сценарии:
- Добавление товара в корзину
- Оформление заказа (каждый шаг)
- Личный кабинет — история заказов
- Поиск по каталогу
- Фильтрация товаров
- Оплата (все подключённые платёжные системы)
- Синхронизация с 1С через CommerceML (если используется)
- Бизнес-процессы (Bizproc) и роботы
- Email-уведомления
- Административная часть — редактирование товаров
Этап 6. Перенос на продакшен. Оптимальный сценарий:
- Ночное обслуживание (уведомить пользователей заранее)
- Резервная копия продакшена
- Обновление Битрикс через update_system_step.php с последовательным прохождением шагов
- Применение подготовленных патчей модулей и шаблонов
- Прогон чек-листа
- Возврат к нормальному режиму работы
Типичные проблемы при обновлении и их решения
| Проблема | Причина | Решение |
|---|---|---|
| Белый экран после обновления | PHP-несовместимость в кастомном коде | Включить display_errors, найти файл |
| Слетел дизайн каталога | Изменился $arResult в компоненте | Адаптация шаблона |
| Не работает корзина | Изменён API модуля sale | Рефакторинг кода работы с заказом |
| Старый модуль не работает | Нет версии для новой платформы | Аналог из Маркетплейса или кастомная доработка |
Что входит в нашу работу?
- Полный аудит кода и структуры сайта
- Развёртывание тестового стенда с резервными копиями
- Поэтапное обновление с фиксацией всех изменений
- Адаптация шаблонов и модулей под новую версию
- Тестирование всех ключевых сценариев (корзина, заказ, 1С, платежи)
- Перенос на продакшен с минимальным простоем (2–4 часа)
- Документация по изменениям и обучение администраторов
- Постмиграционная поддержка в течение 2 недель
Сроки выполнения
| Масштаб проекта | Срок |
|---|---|
| Типовой магазин, минимальные кастомизации | 3–5 дней |
| Средний проект, 5–15 кастомных модулей | 2–3 недели |
| Крупный портал, сложная интеграция с 1С | 1–2 месяца |
Миграция версии — плановое техническое обслуживание, а не разовая катастрофа. При правильной подготовке продакшен находится в режиме обслуживания всего несколько часов. Закажите миграцию под ключ — получите консультацию по вашему проекту уже сегодня. Свяжитесь с нами для точного расчёта сроков и стоимости.
Больше информации о платформе: 1С-Битрикс на Википедии. Изображение: официальный сайт 1С-Битрикс.







