Разработка SEO оптимизированных высокопроизводительных фронтенд приложений на базе 1С-Битрикс.

Реанимация древних проектов на Битриксе

Артем Житник

Артем Житник

Приходилось работать с проектами в разном состоянии. Порой сайт представлял из себя кусок г... мамонта (ну вы понимаете). Ядро Битрикса 10 летней давности, VPS на Ubuntu тех же лет. Тем не менее сайт рабочий, худо-бедно свою функцию выполняет. И вот, приходит заказчик и просит прикрутить какой-нибудь функционал или прокачать SEO. Либо нужно поставить какое-то решение из маркетплейса, настроить интеграцию. Но это сделать невозможно потому что версии php, ядра, операционки сильно старые. Что делать?

Выкинуть все и начать заново

Бывает что сайт настолько заброшен, что не устраивает заказчика по многим измерениям: дизайн, верстка, производительность, SEO, контент, функционал и т.д. Тогда можно разработать с нуля. Процесс дорогой, но можно за месяц выйти на новый уровень. Кажется долго, но может быть быстрее чем распутывать никому не нужное легаси.

Обновить существующее окружение

Начать с нуля не всегда можно, тогда пытаемся взбодрить то что есть по факту. Но с чего начать? Порой получается что обновляешь одно, отваливается другое, либо вообще обновить невозможно из-за отсутствия лицензии.

Приобретение лицензии Битрикс

Встречались проекты которые даже лицензию Битрикса не имели, какие-то ребята поставили давным давно пиратскую копию, взяли деньги с заказчика и отвалили. Это конечно нарушение правил использования платформы и надеяться после этого на обновления не приходится, но вопрос можно решить приобретением соответствующей редакции. Лучше позно чем никогда. Битрикс закроет глаза на нарушение и распахнет объятия для своих блудных детей.

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

Уход от древнего хостинга

Сталкивался со случаями удивительно тормознутых хостингов. Озвучивать название не буду, опишу суть проблемы. Хостинг маленький, мало известный. Настройка серверного окружения осуществлялась через панель управления. Все дико тормозило и плюс к этому раз в неделю сбрасывалась версия php, то есть ты настраиваешь 8.2, через некоторое время приходит в заказчик и жалуется что сайт не работает. В логах куча ошибок, что такое? Слетела php до 7.4.

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

Переключить PHP на рекомендуемую версию

На момент написания статьи рекомендуемая версия PHP 8.4. Допустим была 7.2, после переключения практически гарантированно сайт ляжет. Откроется пустая белая страница или стекрейс ошибок. Нужно преодолеть этот момент - поправить все основные ошибки которые мешают открывать страницы. Они могут возникать как в клиентском коде, в шаблоне сайта, в сторонних модулях, в ядре Битрикса. Не боимся исправлять во всех вышеописанных местах, потому что все равно мы будем обновлять ядро которое уже с 8.4 дружит, обновление затрет наши костыли и придет в нормативный вид.

Что касается сторонних решений, не всегда для них есть обновления. Может разработчики давно бросили их разработку. Можно для начала тупо скопировать модули и компоненты к себе в /local/, там избавиться от ошибок, а в дальнейшем разобраться какой их функционал используется в проекте, перетащить его в свои классы, написать аналоги, а решения удалить. Либо их оставить и поддерживать в дальнейшем самостоятельно.

Бывает что приходится править достаточно много мест, рутинная работа, но ничего не поделаешь этот этап нужно пройти.

Обновление ядра Битрикс

Имеем свежий php, все нужные расширения, активную лицензию Битрикса, можно обновить ядро через стандартную систему обновления. В процессе обновления могут возникнуть ошибки, сталкивался с такими случаями. Либо самому разобраться что их вызывает и починить, либо подтянуть поддержку Битрикса, лицензия теперь позволяет.

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

Рефакторинг кода

После всех обновлений и исправлений ошибок древний сайт начинает работать но свежей платформе. Но он все равно остается ископаемым по внешнему виду и по своей внутрянке. Здесь желательно пробежаться по всему коду проекта, провести рефакториг. Мы чистим код от всякого мусора, неиспользуемых шаблонов, стилей, скриптов, сторонних решений, модулей, переводов и т.д. Часто после такой очистки кодовая база проекта сокращается на 80%. Код становится читаемым. Проясняется бизнес логика. Может быть кому-то покажется этот этап лишним, работа над ним все-таки занимает время и соответственно требует денежных затрат. Но я крайне рекомендую ее провести, это в дальнейшем сэкономит больше времени и денег когда пойдет разработка нового функционала.

Развитие проекта

Предыдущие этапы сводились к подготовке проекта, своего рода реанимации. А когда жизни пациента уже ничего не угрожает, можно приступить к его стационарному лечению, то есть к переверстке, добавлению нового функционала, глубокой SEO оптимизации. Различные аспекты этого процесса я уже в блоге описывал, останавливаться не буду. Самое главное что сайт ожил, его код может эволюционировать подстраиваясь под нужды бизнес логики. Вообще есть такой признак жизнеспособности программного обеспечения, если выпускаются новые версии - проект жив, не выпускаются - пациент скорее мертв. При этом сайт может продолжать работать, но он теряет интерес у клиентов, и в следствии у поисковиков.

Выводы

Как видно процесс трансформации существующего сайта гораздо сложнее чем создания нового, но плюс в том что сайт продолжает работать и выполнять свои бизнес задачи (принимать заказы например). Чем более запущенный сайт, тем сложнее его откачивать. Сделать сложно, но можно!

    Битрикс
    SEO
    Рефакторинг

©2026 ReactiveBx работает на «1С-Битрикс: Управление сайтом» и Next.js