Cookie CMS. Некоторые новости. Определилась структура файлов и каталогов

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

Структура файлов и папок

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

Cookie-CMS
--- index.php
--- .htaccess
--- kernel (здесь находятся всё, что необходимо для базового функционирования)
    --- events.php (система событий, на которых основана связь всех модулей)
    --- functions.php (некоторые базовые функции)
    --- modules.php (управляет модулями)
--- modules
    --- example (пример обычного модуля)
        --- config.ini (конфигурационный файл модуля, если нет, то будет искаться файл index.php и имя темы примет имя папки)
        --- example.php (php код модуля, произвольное название, настраивается в config.ini)
        --- template (html/css код модуля)
            --- example.html
            --- style.css
    --- template (модуль шаблонов, будет идти в стандартной комплектации)
        --- config.ini
        --- template.php
        --- templates (шаблоны)
            --- default
                --- images
                --- index.html
                --- modules (шаблон может заменять html/css код модуля своим)
                    --- example
                        --- example.html
                        --- style.css
                --- style.css

Были мысли по поводу переноса некоторых папок в корень проекта, например templates/ удобнее было-бы видеть в корне, но если будет удобный интерфейс в админке и будет инсталятор шаблонов, то в этом не будет необходимости.

По поводу самой CMS

Как видно по структуре, в теле самой CMS(kernel/) будет находится незначительное количество скриптов. Это связано с тем, что весь функционал будет находиться в модулях. Функции по работе с базами данных, конфигурационные файлы, шаблоны, функции перехода по страницам и т.д., будут в виде модулей. Это и будет отличать Cookie-CMS от другой массы схожих разработок. Именно такую организацию работы я считаю лучшей, ведь абсолютно безграничная расширяемость позволит создавать совершенно любые проекты на его основе, от статичных сайтов-визиток, до высоко нагруженных форумов и порталов.

По поводу исходников

Исходники, конечно, будут в открытом доступе под лицензией GNU GPL(v2 или v3, ещё не решил). Пока их не будет, т.к. готово очень мало и всё может меняться очень глобально(уже при разработке структура файлов менялась 3-4 раза). Также не решил что использовать для хранения исходных кодов — Git или SVN. Склоняюсь к Git, но точно ещё ни в чём не уверен.

В общем, разработка потихоньку продвигается и я очень надеюсь, что из этого выйдет что-то хорошее.

Перейти к верхней панели