Заказчик:
«Остров чистоты и вкуса» — одна из известных в Беларуси сетей дискаунтеров бытовой химии.
Задача:
Взять на себя поддержку сайта интернет-магазина. Требовалось не только следить за его работоспособностью, но и решить накопившиеся проблемы: улучшить код, повысить скорость загрузки страниц, а также создать возможности для эффективного добавления новых функций.
Ключевыми KPI в проекте были: скорость, удобство управления сайтом и масштабируемость. Чтобы повлиять на эти метрики, требовалось:
Изучить текущее положение дел
Предложить клиенту конкретные улучшения
Согласовать и внедрить их
Как и всегда, любые наши предложения опираются на тщательное изучение IT-инфраструктуры заказчика.
Сайт интернет-магазина реализован на «1С-Битрикс». Это высоконагруженный ресурс с большим потоком посетителей. За время работы «Остров чистоты и вкуса» накопил огромное количество контента: десятки тысяч карточек товаров.
Большие объемы данных не всегда можно обработать средствами языка программирования так же легко, как сравнительно небольшой объем информации. Требуются специфические, более сложные процедуры.
Еще одна ключевая особенность интернет-магазина — множество интеграций, в том числе с учетными системами заказчика. Они обеспечивали синхронизацию цен, каталогов, остатков и автоматическую передачу слотов доставки.
Разобрались, как устроен сайт, и предложили конкретный план действий, чтобы повысить стабильность, скорость и масштабируемость.
1. Провести рефакторинг кода — убрать устаревшие решения, повысить отказоустойчивость и ускорить сайт, особенно на мобильных. Актуализировать версию PHP с 7.4 до 8.1.
2. Внедрить расширенную электронную торговлю — интеграцию с Google Analytics 4 (GA4) для точного отслеживания поведения пользователей и глубокой персонализации товарных предложений.
3. Оптимизировать поиск — подключить поисковый движок Sphinx, чтобы обеспечить быстрый и точный поиск с гибкой настройкой синонимов и стоп-слов через админку «Битрикса».
4. Настроить многоценовость и многоскладовость — чтобы показывать персонализированные цены и оформлять заказы с учетом нужного склада в зависимости от региона и доступности товара. Также реализовать логику работы с товарами, помеченными как скоропортящиеся: не все зоны доставки могут их принимать, а транспорт должен быть оснащен холодильным оборудованием.
5. Добавить авторизацию и регистрацию по номеру телефона и SMS — чтобы упростить вход и повысить вовлеченность пользователей.
6. Настроить SMS-оповещения по курьерам — клиент получает уведомление, какой курьер и во сколько привезет заказ.
7. Реализовать оформление заказа без авторизации — чтобы ускорить первый заказ и снизить порог входа.
8. Разделить логику работы с физическими и юридическими лицами — учесть особенности документооборота и оплаты для разных типов покупателей.
9. Настроить процесс возврата заказов — с понятной логикой и прозрачными статусами.
10. Вынести акции в высоконагруженные блоки «Битрикса» — чтобы ускорить загрузку страниц с промо и разгрузить основную структуру сайта.
11. Добавить логику отключения записи cookie-файлов — для соответствия требованиям конфиденциальности и защиты данных.
С самого начала стало ясно: в дизайн вмешиваться не нужно. Сайт работал на привычном для клиента шаблоне «1С-Битрикс» — менять его он не хотел. Аналогично и с веб-аналитикой: бизнес-метрики клиент отслеживал самостоятельно. Мы отвечали только за техническую часть — код, модули, интеграции.
Когда перешли от плана к реализации, выяснилось: под капотом сайт — настоящий клубок. Пришлось разбираться с десятком непростых задач.
Интеграции: сложные, ресурсоемкие, местами хрупкие
Сайт был глубоко связан с внутренними системами заказчика и внешними API. Использовались и старый файловый обмен, и веб-хуки. Все это в связке с устаревшей архитектурой порождало ошибки при каждом изменении. Мы упростили структуру и перевели обмен данных с устаревшего файлового формата на REST API — более надежное и масштабируемое решение.
Поиск: нужно было точнее и быстрее
Поиск по каталогу — ключевая функция. Но работа с артикулами и штрихкодами осложнялась ошибками в исходных данных и их нестандартным форматом. Мы переработали механику поиска, подключили Sphinx и сделали управление синонимами и стоп-словами доступным из админки.
Персонализация: GA4, данные, сценарии
Интеграция с Google Analytics 4 позволила собрать больше поведенческих данных. Следующий шаг — задействовать их в рекомендательных алгоритмах. Мы создали инфраструктуру, которая позволяет легко подключать более тонкие сценарии персонализации.
Ценообразование: для каждого свое
Многоценовость потребовала учета множества факторов: от истории поиска до региона и типа клиента (розница или мелкий опт). Все это пришлось учесть в логике формирования цены, не теряя в скорости и стабильности.
Несмотря на все сложности, проект закрыт в срок и с нужным результатом:
Сайт стал работать ощутимо быстрее
Поиск — точнее и отзывчивее
Предложения — персонализированнее
Создана техбаза, с которой клиент может спокойно двигаться дальше: наращивать функциональность, подключать новые алгоритмы и тестировать гипотезы без риска все уронить.
Оптимизация интеграций дала мощный прирост — производительность больше не страдает от старых решений.