Год спустя, история проекта
NoiCMS - это пока не история успеха, о том как я разработал CMS, которой все теперь пользуются. Это огромный опыт, который помог мне понять, в какую сторону нужно двигаться, и каких ошибок стоить избегать в будущем.
Наберите в google.com "wordpress интернет-магазин" и вы увидите плагины, которые реально реализовывают функционал интернет-магазина в рамках блогового движка. Я не считаю эту ситуацию нормальной.
Год назад 14 января 2014 года, мы с другом решили создавать веб-сайты на заказ. В тот момент мой эгоизм превосходил все мыслимые пределы, и поэтому решено было разрабатывать веб-сайты на своей CMS, которую я в процессе должен был ещё и разрабатывать.
Для себя я считал эталоном среди CMS - Joomla (http://www.joomla.org/), так как она обладала всеми необходимыми функциями для создания полноценного веб-сайта. Однако был в ней один минус, а именно: не удобство разработки компонентов, модулей, плагинов, что в конечном итоге сказывается на производительности Joomla(http://konservs.com/it/web/why-i-hate-joomla-58). В своей CMS я решил избежать этого недостатка и сделать загрузку всего сайта без учета запросов плагина, то есть 1 запрос на страницу. В связке с базой данных mysql, это реализовать было невозможно, поэтому в качестве базы данных я выбрал mongodb, так как в рамках одного массива хранилась информация обо всех используемых компонентах (плагины,виджеты).
В процессе получения опыта разработки уникальных веб-сайтов, требовался различный функционал от ведения блога, до возможности регистрации пользователей. Я не буду описывать сверх-возможности нашего плагина "blog" (ведение блога), а вот плагину "user" (плагин пользователей) уделю внимание, так как на мой взгляд он сделан очень интересным образом.
Любой хороший специалист в области веб-разработки, сможет определить CMS по следующим признакам:
- система регистрации
- место размещения шаблона
- адрес административной панели
Я не хотел, чтобы любой человек имел возможность изучить CMS и использовать её против клиентов, поэтому в NoiCMS вы можете самостоятельно настроить полностью весь процесс регистрации начиная от названия коллекции, где будет хранится информация о пользователях, заканчивая конечными полями которые требуется заполнить пользователю при регистрации или например после авторизации в профиле.
Еще одним из достоинств NoiCMS является полная настройка всех конфигурационных параметров системы. Вы можете изменить следующие системные значения:
- Путь к папке с шаблонами
- Путь к плагинам
- Состояние кеша (включен или выключен)
- Время хранения кеша
- Папка хранения CMS
- Путь к папке с компонентами
Сегодня год NoiCMS, но я уже верю, что в ней есть не только недоработки, но и особенности. Она в разработке и как любой проект всегда будет развиваться, меняться и я уверен, становится доступной, оставаясь безопасной.