🔥

Тред (Денис Хрипков)


CMS - content management system. Или админка простыми словами. То, что позволяет управлять сайтом без релизов/кода/разработчиков и прочего. no-code, как сейчас можно говорить. Так-то оно так, да только совсем не так :)

Админки бывают разные. Есть крупные cms-фреймворки типа микрософта. Там можно создавать порталы (ещё одно словечко из 2000 года), т.е. целые интранеты на все подразделения корпорации. Одна беда - чрезмерная универсализация повышает порог входа, и безумно тупит.

Есть маленькие админочки, для сайтиков-магазинов. Там можно легко поднять 5-10 страниц и запустить интернет-магазин. Есть онлайн-админки, начиная с почившего narod'a на яндексе и другие.

Есть самописки - тоже страшный зверь, который не может пережить апдейт. Шаг влево, шаг вправо - полгода доработок. Во время расцвета xslt понравилась админка симфония, там был low-code на шаблонах, и настраиваемая база данных на микро-сущностях.

Хорошо когда платформа известная, и есть много плагинов и специалистов, чтобы их настроить. Но когда плагины начинают конфликтовать, или когда система чуть-чуть крашиться, тебе надо либо это фиксить (но тогда система становиться не обновляемой), либо проталкивать офф. обновление

что зачастую стоит времени и/или денег Отдельно стоят системы, которые пытаются сохранить обратную совместимость во что бы то ни стало, битрикс, привет. Через мажорки в века, но вот микро-бекдор для работы с данными что храняться в файлах, а не в базе. (не знаю как там сейчас)

Когда мы не смогли мигрировать на новую версию xslt-админки на parser3, управленцы не придумали ничего лучше, как купить новый сайт и положить его рядом. Типо, вот новый, перетаскивайте на него старый! И побыстрей, не тупите там. Не зря же денег заплатили.

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

Потом nodejs наскучил, и мы начали мигрировать на golang. Ну как начали, сделали пяток сервисов. Паралельно начали переходить из nodejs монолита в ts-микросервисы. И завершили переход переездом бека на java.

Когда сайт перестал устраивать технологически, мы запустили прототип на nodejs ssr react. Микропроект из 5ти страниц, с сингпейджом, так выстрелил, что порвал все kpi и было решено в срочном порядке переезжать туда все остальные сайты (4 штуки и 70к страниц).

Закончилось понятно чем, да? У системы не было админки :) Через полгода всё стало очень долго. Задумались, сделали новый 5й сайт и начали делать админку.

Сейчас alfabank.ru собираем из фабричных виджетов - достаём из базы json, рендерим на ssr и гидрейтим на клиенте.

В админке можно раздельно управлять десктоп и мобайл версией страницы, можно выставлять время запуска и остановки виджета, редактировать дерево виджетов и доступные пропсы, делать a-b эксперименты. Сохранять черновики и подливать большие изменения через js-моки.

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

Ну и персонализация ещё, куда сейчас без неё. Да, конечно это не конец истории, работы ещё много, как в плане UX так в плане подтачивания удобства работы с компонентами и дизайн-контроля пресетов, но главное что оно в проде и уже решает задачи.

При том, старые админки ещё живее всех живых, и только-только мигрируют в новую систему. Что-то уходит на подрядчиков, что-то в другие системы (раньше сайт держал совсем непрофильные системы, потому что больше было некому). Так сразу иногда и не скажешь, на каком ты сайте, ...

но вот вам лайфхак: в коде html, прямо в первом теге, стоит указание на инстанс и иногда - команду поддержки. Вам это ничем не поможет, но как забавный факт - да ) Пример с последнего инстанса.
notion image

Расскажите, какая у вас цмс, какие боли решаете, и какие забавняшки можно найти в проде?