Как стать автором
Обновить

Комментарии 10

Поэтому я решил сфокусироваться на удобном интерфейсе и эргономике

Было бы очень любопытно посмотреть если не на сам интерфейс, то хотя бы на скриншоты.

Выглядит необычным, что функционал визуального редактора шаблона отнесен к базовому. Заказчики часто рвутся сами редактировать шаблон? Или что-то другое подтолкнуло к этому решению?
Решил дать такую возможность клиенту и себе (отредактировать какую нибудь мелочь через браузер). Конечно перед редактированием всплывает окно о предупреждении что редактирование может навредить сайту. В этом случае предусмотрена система отката предыдущего состояния шаблона.
У меня в последнее время сложилось впечатление, что обилие возможностей в конечном итоге больше вредит неискушенному пользователю, чем помогает. Т.е. предупреждения никто не читает, а залезть куда-нибудь голыми руками и напортачить — в порядке вещей. Но может у ЦА другая, и таких проблем нет.

Еще вот этот момент (и аналогичные) выглядит необычно:
колонки модулей (шесть колонок для привязки модулей к шаблонным меткам (5))

Т.е. я правильно понимаю, что у вас в БД в соответствующей таблице есть по колонке на каждый модуль? Не было бы удобнее хранить список модулей в отдельной таблице, а еще в одной обеспечивать привязку модулей к меткам?
Нет, для модулей отдельной таблицы нет, они определяются для сайта автоматически (сканирование директории модулей по шаблону, и включение в выпадающие списки при включении их в раздел в админ-панели), — такой механизм позволяет обойтись без таблицы для списка модулей. Для модуля создается таблица если она необходима для его работы, (доп. Данные). В таблице разделов (строка-раздел) указывается какой модуль(и) включить в шаблон(ы) для этого раздела (привязка модулей к меткам). Короче используется одна таблица для базового структурирования сайта.
Хотел написать продолжение поста и посвятить его админ-панели и дизайну. Но сомневаюсь что будет вдохновение. Если интересно можете посетить раздел посвященный CMS на моем сайте.
Насчет максимального упрощения администрирования — сильно сомневаюсь. Для вас интерфейс может и простой, но не для пользователя.

С технической точки зрения, для хабра тут нет ничего интересного. Каждый второй веб-разработчик когда-то писал свою CMS на коленке. Большинство, получив бесценный опыт, на нее благополучно забили и либо перешли на что-то посерьезнее, либо выросли и теперь пользуются фрейморками и пересали делать сайты-визитки.
Вы правы, на счет (ценность информации) технической точки зрения. Просто пост я создал в качестве демонстрации своего опыта (кстати негативный (чужой) опыт — тоже опыт) а не «посмотрите, какую я крутую современную штуку сделал сам». Реально интересно было узнать сколько разработчиков прошли через подобное, именно это и хотел видеть в комментариях. В очередной раз убеждаюсь что я слишком много копаюсь и анализирую прошлое, а это не есть гуд. Спасибо за ваше мнение :)
Реально интересно было узнать сколько разработчиков прошли через подобное, именно это и хотел видеть в комментариях.


Я писал свою CMS, которая должна была преобразовывать определенную файловую структуру (папки с текстом, с фотками, с PDF и тд) в сайт используя различные представления для разных типов файлов. А до этого писал CMS, которая позволяла писать контент в MarkDown и налету конвертировать его в HTML с заданной темой. А совсем недавно писал очень простой движок для блога на NodeJS (не знаю, считается ли это CMS), но это скорее для того, чтобы объяснить, как работает ExpressJS, чем ради написания CMS

Я думаю, что все это полезный опыт: я научился лучше программировать, я научился более-менее сносно рисовать дизайны, ну и начал немного думать о том, что если собираться спустить кучу времени на какой-нибудь проект — стоит подумать, как с этого заработать (опыт, деньги и тд).
Я бы посоветовал Вам по другому относится к CMS.
В моем понимании уже давно сложилась следующая структура — фреймворк обеспечивает абсолютный функционал для разработки сайта, CMS является лишь модулем для фреймворка. Если разобраться в терминологии, CMS — система управления контентом, но никак не система для разработки сайта.

Возьмите Yii или разработайте свой фреймворк, который будет отвечать Вашим требованиям, и уже на основе фреймворка создайте модуль для управления конктентом, ведь таким образом останется только дать возможность редактировать данные из базы данных или редактировать контент статических страниц через ВИЗИВИГ, к тому же, если речь идет о представительском сайте (сайт-визитка — это одностраничный сайт и не требует наличия CMS), то не структурированная информация (типа новостей, статей, фотографий и так далее) не требует сложной работы с базой данных.

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

Я, например, жду выхода Yii 2.0 из альфы, для форка и некоторой переработки под свои нужды.
Я полностью разделяю ваше мнение и подход. Пост описывал мой опыт из недалекого прошлого, поэтому не сильно уделяюсь «-»ам. Да, наивно читается, и наивно вытягивать из чулана старые вещи.
А сейчас я полностью пересматриваю свой подход, и без фрейморков конечно не обойдется. Но скорее всего yii ждет участь wordpressa, и я «пойду своей дорогой»… время покажет.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории