Коробочные vs самописные: как Rise Media Group выбирала CMS под маркетплейс
Rise Media Group — о трудностях выбора (и не только выбора) движка.
С чего все начиналось
В 2019 году мы приступили к созданию City Seller — маркетплейса товаров премиум-класса от региональных фэшн-ритейлеров. Этот проект — возможность для бутиков выйти на новый уровень и сравниться с федеральными игроками. Бутики-партнеры маркетплейса представлены в рейтинге «100 лучших бутиков России».
Определившись с концепцией площадки, мы начали поиск коробочной CMS, которая отвечала бы всем нашим требованиям:
- Поддержка мультикарточки товара — объединение одной и той же позиции, представленной в разных магазинах, в одну карточку. При этом конечная цена товара для покупателя должна определяться в зависимости от его местоположения;
- Возможность автоматической интеграции с 1С каждого партнера;
- Наличие личных кабинетов партнеров;
- Оптимальное количество запросов к БД для каждой страницы.
ВСЕ ПОШЛО НЕ ПО ПЛАНУ, или работа с CS‑Cart
Нам нужна была CMS под конкретное решение — как можно быстрее. Сжатые сроки заставили нас обратиться к коробочным вариантам, среди которых мы выбрали CS‑Cart — и это было большой ошибкой.
Во-первых, мы слышали обещание о настройке CMS за 2 недели. А по факту — найти стоящего специалиста по CS-Cart крайне сложно, практически невозможно. Разобраться самостоятельно в запутанной архитектуре оказалось нереально.
И вроде бы у нас был список партнеров компании-разработчика. Казалось бы — свяжись и работай! Увы, все не так просто: кто-то из них не отвечал, кто-то отвечал спустя три недели после того, как мы задали вопросы по разработке. А партнер, с которым мы в итоге начали сотрудничать, озвучил такую цену, что мы даже не будем ее вам называть — чтобы не пугать. Но делать нечего — сроки горели, нам пришлось соглашаться на такие драконовские условия.
Оказалось, это было только начало!
Во-вторых, вопреки обещаниям мы не смогли реализовать мультикарточку товара: CS-Cart поддерживал только возможность добавления товаров администратором, при этом каждый партнер должен был выбирать позиции из уже добавленных на сайт.
В-третьих, никакой адекватной интеграции с 1С партнеров мы не увидели: с нас требовали наличие единой базы товаров.
Помимо этого, у нас возникли проблемы с оптимизацией страниц: на главной количество запросов к БД достигало 100 из-за излишней, на наш взгляд, кастомизации.
Также мы поняли, что дорабатывать сайт самостоятельно мы не сможем, а помощи ждать неоткуда.
Прекрасным завершением этого списка стал отказ в возврате денег от разработчиков этой прекрасной CMS — несмотря на громкое заявление “Мы вернем вам деньги, если вас что-то не устроит в нашем скрипте для интернет магазина и уровне сервиса” на главной странице их сайта.
Хочешь сделать хорошо — сделай сам!
Все вышеописанное привело нас к срыву всех дедлайнов и необходимости за ДВЕ НЕДЕЛИ до сдачи собрать архитектуру CMS, заточенную под наши нужды. В итоге мы остановились на Laravel — поскольку у нас были инхаус-специалисты, разбирающиеся в этой области, и значительный опыт в PHP-разработках.
Итог:
- До 15 запросов к БД на страницу;
- Полная интеграция с 1С партнеров и возможность автоматической синхронизации остатков;
- Немного о UX: City Seller собран, как одностраничное приложение (первая страница на сервере, остальные — на клиенте).
Оценить проделанную работу можно тут: city-seller.ru.
А всем, кто ступит на тот же путь, что и мы, хотим напомнить: пословица “Поспешишь — людей насмешишь” родилась не на ровном месте. Только вот главному ее герою совершенно не смешно, а очень даже грустно. Не повторяйте наших ошибок!