Тема создана для выработки идей и условий для создания CMS для малого бизнеса.
Итак, что должна делать и как должна быть устроена CMS для малого бизнеса?
1. Структура
1.1. Системные файлы.
Файлы для работы с файловой системой. Файлы для подключения к БД.
Основной объект типа синглтон. Единый системный конфиг, доступный глобально.
Пользователи. Имеют права пользователя и группы, в которую входят. Имеют уровень доступа (число), в зависимости от него есть доступ к модулям п. 1.2. Возможность отключения регистрации.
1.2. Модули расширения
Обязательные: публикации, статичные блоки, магазин с каталогом, галерея. Все модули должны наследоваться от одного объекта «публикации». Имеют уровень доступа (число). Таким образом релизуются скрытые разделы статей, каталога, форума и пр.
13. Папка шаблонов.
1.4. Папка системных расширений: js-скрипты, файлы css, системные картинки.
1.5. Админка с поддержкой шаблонов и изменение доступа в зависимости от прав.
2. Интересные функции (в том числе подсмотренные у других).
2.1. Вход админа в другого пользователя (как в ISPmanager)
2.2. Возможность переключения языка «на лету» (есть)
2.3. Возможность переключения шаблона сайта «на лету» (есть)
2.4. Логика отображения модуля расширения на странице. Например, если адрес равен «магазин», то модуль показывается, иначе нет. Неограниченные функции таких настроек благодаря применению чистого PHP. (есть)
2.5. Функциональный файловый менеджер. (есть)
2.6. Функциональный редактор для публикаций.
Выбрал TinyMCE бесплатную редакцию, осталось прикрутить менеджер картинок. Хотя должна быть возможность замены.
2.7. Для разработчика: исполнение PHP и MySQL кода внутри фреймворка. (есть)
2.8. Для администратора: редактор шаблонов ( спасибо @CAPAXA ).
2.9. Установка движка путем закачки 1 файла, остальное он закачивает и распаковывает сам. (есть)
2.10. API для интеграции со сторонними сервисами. Возможность переименования точки входа.
2.11. Конструктор для API 2.10.
2.12. Возможность работы с разными SQL-совместимыми БД (для начала MySQL, PostgreSQL, SQLite). Переключение БД с возможностью конвертации и импорта/экспорта данных.
2.13. Для разработчика: режим отладки.
2.14. Для администратора: режим публикации контента: html, txt, txt&smiles, php
2.15. Ограничение доступа к сайту по пользователю, по IP, возможность запрета регистрации
2.16. Возможность включения капчи в комментариях, выбор капчи
2.17. Возможность замены штатного редактора. Скрипт подключения редактора вынести в шаблон.
2.18. Версионирование движка и модулей.
2.19. Журналирование действий, вкл и выкл. Если получится, то и откат. Хотя это сложно.
2.20. Компилятор sass → css https://scssphp.github.io/scssphp/
2.21. Шаблонизатор на bootstrap
2.22. Генератор цветовых схем сайта по типу https://colorscheme.ru/
12.09 — дополнил пп. 1.1, 1.2., дописал пп 2.4. до 2.9.
13.09 — дописал 2.10 - 2.13
21.10 — дописал 2.14 - 2.19
21.11 — дописал 2.20 - 2.22
To be continued...
Топик будет дописываться и дополняться по моим идеям и Вашим предложениям.
Готовые пункты — отмчены (есть)
Прошу поучаствовать, если есть клёвые идеи!
Добрый день, друзья.
Когда я начинал свою деятельность как ИП, я искал лучшую систему управления для малого бизнеса.
12 лет назад прошло, но идеальной системы для малого бизнеса так и не сделали, все пользуются либо вордпрессом, либо движком магазина.
В общем, что ни возьмут люди, при развитии бизнеса начинаются проблемы: то вордпресс тормозит под нагрузкой, то движку не хватает модулей и трудно найти спецов для доработки, то цена кусается, то слишком сложен. В общем, пора разработать самим, я считаю. Ведь по количеству предприятий малый бизнес — самый многочисленный. Ему нужен свой движок, бесплатный, и с возможностью роста. И в этой теме хотел бы обсудить требования к такой системе управления сайтом. Типа ТЗ к разработке.
Когда я начинал свою деятельность как ИП, я искал лучшую систему управления для малого бизнеса.
12 лет назад прошло, но идеальной системы для малого бизнеса так и не сделали, все пользуются либо вордпрессом, либо движком магазина.
В общем, что ни возьмут люди, при развитии бизнеса начинаются проблемы: то вордпресс тормозит под нагрузкой, то движку не хватает модулей и трудно найти спецов для доработки, то цена кусается, то слишком сложен. В общем, пора разработать самим, я считаю. Ведь по количеству предприятий малый бизнес — самый многочисленный. Ему нужен свой движок, бесплатный, и с возможностью роста. И в этой теме хотел бы обсудить требования к такой системе управления сайтом. Типа ТЗ к разработке.
1. Структура
1.1. Системные файлы.
Файлы для работы с файловой системой. Файлы для подключения к БД.
Основной объект типа синглтон. Единый системный конфиг, доступный глобально.
Пользователи. Имеют права пользователя и группы, в которую входят. Имеют уровень доступа (число), в зависимости от него есть доступ к модулям п. 1.2. Возможность отключения регистрации.
1.2. Модули расширения
Обязательные: публикации, статичные блоки, магазин с каталогом, галерея. Все модули должны наследоваться от одного объекта «публикации». Имеют уровень доступа (число). Таким образом релизуются скрытые разделы статей, каталога, форума и пр.
13. Папка шаблонов.
1.4. Папка системных расширений: js-скрипты, файлы css, системные картинки.
1.5. Админка с поддержкой шаблонов и изменение доступа в зависимости от прав.
2. Интересные функции (в том числе подсмотренные у других).
2.1. Вход админа в другого пользователя (как в ISPmanager)
2.2. Возможность переключения языка «на лету» (есть)
2.3. Возможность переключения шаблона сайта «на лету» (есть)
2.4. Логика отображения модуля расширения на странице. Например, если адрес равен «магазин», то модуль показывается, иначе нет. Неограниченные функции таких настроек благодаря применению чистого PHP. (есть)
2.5. Функциональный файловый менеджер. (есть)
2.6. Функциональный редактор для публикаций.
Выбрал TinyMCE бесплатную редакцию, осталось прикрутить менеджер картинок. Хотя должна быть возможность замены.
2.7. Для разработчика: исполнение PHP и MySQL кода внутри фреймворка. (есть)
2.8. Для администратора: редактор шаблонов ( спасибо @CAPAXA ).
2.9. Установка движка путем закачки 1 файла, остальное он закачивает и распаковывает сам. (есть)
2.10. API для интеграции со сторонними сервисами. Возможность переименования точки входа.
2.11. Конструктор для API 2.10.
2.12. Возможность работы с разными SQL-совместимыми БД (для начала MySQL, PostgreSQL, SQLite). Переключение БД с возможностью конвертации и импорта/экспорта данных.
Вообще, по идее, большинству сайтов-хомячков для стартового сайта даже SQLite за глаза). Однако по мере роста должна предусматриваться возможность перехода. Для реализации такой возможности придется написать независимые функции для работы с БД, а драйверы БД переключать при смене конфига. Естественно, сложные запросы при такой реализации идут лесом, что может иметь проблемы при работе с некоторыми модулями, особенно в магазине. Пока как рабочий вариант: начинать совместимым ядра с SQLite, при установке более сложных модулей требовать переход на MySQL и пр. В том числе возможно при разработке требованиями к модулю прописывать совместимость с БД. До конца этот вопрос пока не продуман.
2.14. Для администратора: режим публикации контента: html, txt, txt&smiles, php
2.15. Ограничение доступа к сайту по пользователю, по IP, возможность запрета регистрации
2.16. Возможность включения капчи в комментариях, выбор капчи
2.17. Возможность замены штатного редактора. Скрипт подключения редактора вынести в шаблон.
2.18. Версионирование движка и модулей.
2.19. Журналирование действий, вкл и выкл. Если получится, то и откат. Хотя это сложно.
2.20. Компилятор sass → css https://scssphp.github.io/scssphp/
2.21. Шаблонизатор на bootstrap
2.22. Генератор цветовых схем сайта по типу https://colorscheme.ru/
12.09 — дополнил пп. 1.1, 1.2., дописал пп 2.4. до 2.9.
13.09 — дописал 2.10 - 2.13
21.10 — дописал 2.14 - 2.19
21.11 — дописал 2.20 - 2.22
To be continued...
Топик будет дописываться и дополняться по моим идеям и Вашим предложениям.
Готовые пункты — отмчены (есть)
Прошу поучаствовать, если есть клёвые идеи!
Последнее редактирование: