Дата: 2011-08-23

Автор: Newbilius

Занимаюсь разработкой новой CMS. Подробности ниже.

Основная идея.

Релизовать всё на основе минимального числа базовых блоков:

Группы блоков -> Data-блок -> Элементы в Data-блоке

Все более обще элементы (пользователи, страницы сайта, модули, шаблоны) так же будут реализованы Data-блоками, что позволяет использовать общее API для манипуляции любыми элементами сайта.

Группа блоков

Просто метод  группировки блоков, для удобства манипуляции.

DATA-блок

Сущность, включающая в себя поля. Поля - это "заголовки", "картинки", "тексты" и т.п. Все параметры data-блоков должны настраиваться непосредственно из системы администрирования.

Элементы блоков

К ним относятся как непосредственно элементы, так и папки, позволяющие создавать иерархию элементов любой вложенности.

Техническая часть.

Полноценное описание сделаю позже, но самое главное - каждый блок хранится в отдельной таблице со всеми его параметрами. Минус по сравнению с битриксом - у каждого блока своя нумерация элементов. Плюс - скорость работы огромна по сравнению с тем же битриксом, запросы данных - короткие и четкие, никакой монстроузности.

Множественные поля - хранить в том же поле, но с разделителем.

По возможности, минимальное использование велосипедов в вспомогательных модулях: использовать JQuery для выпадающих меню и в деревьях выбора в левом меню, использовать готовые визуальный редактор и файловый менеджер.

Коммерческая выгода и распространение

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

Готовность на 23.08.2011

Для нормального использования необходимо доделать следующие части:

  • фильтры в системе администирования, для раздела "содержимое"
  • в левое меню встроить возможность схлопывать и разворачивать разные уровни иерархии (плагин jquery)
  • управление доступными типами из системы администрирования
  • компонент "листалка страниц" (пагинатор)
  • наработка компонентов (новости, каталоги, галлереи, и т.д.)
  • сортировка элементов перетаскиванием (jquery+смена поля sort)
  • перетряхиваение кода, проверка на уязвимости и фильтрации входных данных
  • настройка сортировки в админке по-умолчанию

В ближайшем будущем доделать модули и плагины

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


Поделиться ссылкой:
Facebook Twitter ВКонтакте
Тэги:  HolyCMS разработка сайтов

Комментарии (1 шт.)
[2011-09-12] Михаил
Чуваки, вы реально крутые!))


© Дмитрий Newbilius (программист)
и Дмитрий Hule (админ)
2010-2024 г.