DeveloperDoc/Structure

Version 2 (modified by vlad@…, 6 weeks ago)

--

Файловая структура LiveStreet

Файловая структура фреймворка следующая:

/classes/	
	/actions/
	/blocks/
	/hooks/
	/modules/
/config/
	/modules/
/engine/
	/classes/
	/include/
	/lib/
	/modules/
/include/
	/ajax/
	/cron/
/logs/
/plugins/
/templates/
	/cache/
	/compiled/
	/language/
		/modules/
	/skin/
		/skin_name/
			/actions/
/tmp/
/uploads/
  • /classes/actions/ - классы экшенов
  • /classes/blocks/ - классы обработчиков блоков в шаблоне
  • /classes/hooks/ - классы хуков
  • /classes/modules/ - классы пользовательских модулей
  • /config/ - основные файлы конфигурации
  • /config/modules/ - файлы конфигураций модулей
  • /engine/ - ядро фреймворка
  • /engine/classes/ - системные классы ядра
  • /engine/include/ - дополнительные необходимые функции ядра
  • /engine/lib/ - внешние библиотеки
  • /engine/modules/ - системные модули
  • /include/ - дополнительные необходимые пользовательские функции
  • /include/ajax/ - внешние ajax обработчики
  • /include/cron/ - файлы запускаемые по расписанию через cron
  • /logs/ - содержит логи
  • /plugins/ - содержит плагины
  • /templates/ - шаблоны внешнего вида(оформления) на Smarty
  • /templates/cache/ - кеш для JS и CSS файлов
  • /templates/compiled/ - содержит компилированые Smarty шаблоны
  • /templates/language/ - языковые файлы для мультиязычности
  • /templates/language/modules/ - языковые файлы модулей
  • /templates/skin/ - содержит используемые шаблоны
  • /templates/skin_name/ - определенный шаблон, например, /templates/default/
  • /templates/skin_name/actions/ - содержит список шаблонов для каждого экшена
  • /tmp/ - каталог для временной файлов и кеша
  • /uploads/ - каталог для загрузки файлов, например, изображений

Общая схема работы довольная простая и стандартная: запрос от пользователя (request URL) -> запуск роутера -> определение экшена -> запуск экшена (выполнение необходимой логики) -> вывод в браузер.