CMS, которую я ненавижу, но которой пользуюсь (да, я такой)
Блин, народ, вот бывает такое: пишешь вроде бы в разделе про «Другие CMS», а самому хочется плюнуть на все и revert-нуть до старых добрых WordPress или Joomla, ну или вообще в какой-нибудь самописный фреймворк уйти с головой. Но нет. Застрял с одной штукой. Название не скажу, потому что стыдно, но это что-то из разряда «недо-фреймворк, пере-CMS», короче, мутное такое создание
История такая: прошлым летом брался за один проект по созданию сайтов для небольшого онлайн-кинотеатра. Ну, типа, каталог фильмов, пользователи, просмотры, все дела. Заказчик принес эту CMS, сказал: «Вот, она быстрая, гибкая, все умеет». Ага, как же. Я, как человек, который занимается веб-разработкой не первый год, сразу почувствовал неладное. Интерфейс админки, ну, скажем так, напоминал интерфейс какой-то ОС из начала 2000-х. Никакой интуитивности, везде какие-то дикие конфиги, которые надо править вручную, а документация… ну, она существовала, но больше походила на сборник чьих-то случайных заметок.
Думал, ладно, прорвемся. Frontend там еще более-менее, на Vue.js было собрано, так что с этим проблем не возникло. А вот backend… мамочки. Там вся логика была завернута в такие конструкции, что даже при взгляде на код хотелось плакать. Попробовал добавить новую фичу – вывести список фильмов определенного жанра на главной. Казалось бы, что может быть проще? Но нет. Пришлось копаться в моделях, контроллерах, переписывать куски запросов к базе данных, которые выглядели так, будто их писал обезьяна под веществами. Причем, когда я пытался сделать что-то нестандартное, система начинала дико тормозить или вообще выдавала ошибки 500, которые было невозможно отследить. Короче, пару раз чуть не послал все к черту.
В итоге, конечно, я справился. Заказчик доволен, сайт работает. Но это было такое вырвиглазное приключение, что я теперь сто раз подумаю, прежде чем браться за что-то подобное. Если у кого-то был подобный опыт с такими «темными лошадками» в мире CMS, поделитесь, очень интересно послушать.