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

Гид по дереву файлов и категорий в Cotonti Siena

Автор русской версии статьи: esclkm

#1. Первое знакомство

Основные принципиальные различия CotontiSiena от CotontiGenoa - разделение информации и модуляризация. Ранее все функции находились в одном файле functions.php. Теперь этих файлов стало намного больше, они все разбиты по видам выполняемых функций. Также теперь намного более четко выделено ядро и настраиваемые модули.

Начнем разбираться со структурой движка. Дабы понимать, что и где искать.

Каталог / Файл

Что там искать?

datas/

Каталог, в котором находятся данные, доступные для записи. В нем находится конфигурационный файл (config.php), а также все загруженные пользовательские файлы.

 

images/

Каталог, в котором хранятся библиотеки картинок-иконок, используемые на сайте

js/

JS скрипты, в том числе библиотека jQuery

lang/

Языковые файлы ядра и общего пользования. По умолчанию Русская и Английская локализация.

lib/

Дополнительные PHP и не только библиотеки (появилось в Siena)

modules/

Модули. Тут хранится то, что обеспечивает основной функционал сайта (появилось в Siena)

plugins/

Плагины. Это то, что расширяет функционал модулей.

setup/

Каталог, в котором расположены вспомогательные файлы по автоматической инсталляции / обновлению CMS

system/

Ядро CMS, а так же модули Users и Admin (это базовые модули – без них невозможно существование сайта)

themes/

Каталогстемами. В Genoa онназывался Skins.

admin.php

Загрузчик админ-панели

forums.php

Загрузчик форумов

index.php

Главная страница сайта

install.php

Запуск инсталятора / апдейтера

INSTALL.TXT

Информация о установке на Англ языке

License.txt

Файл Лицензии

list.php

Файл необходим для корректного отображения старых линков модуля list. На новых сайтах файл не нужен

message.php

Модуль системных сообщений / ошибок / редиректов

page.php

Загрузчик модуля страниц / листов

pfs.php

Загрузчик модуля PFS (Мои файлы)

plug.php

Загрузчик standalone частей плагинов / модулей

pm.php

Загрузчик модуля личных сообщений

polls.php

Загрузчик модуля опросов

rc.php

Данный файл необходим для вывода консолидированных скриптов и стилей

rss.php

Модуль RSS

users.php

Загрузчик системного модуля пользователей

view.php

Специальный файл для вывода статических элементов (txt, html файлов)

 

После этого краткого знакомства переходим к структуре файлов и папок в модулях/ плагинах. Разберем их в одном блоке, так как их структура ничем не отличается. Попав в директорию modules или plugins, видим дерево всех модулей или плагинов. Модули и плагины вместе образуют то, что мы называем расширениями движка. Внутри каждой директории находится содержимое расширения. Разберем его подробно:

Расширение /

 

img/

Каталог для хранения изображений, которые используются данным расширением

inc/

Дополнительные файлы данного расширения, в том числе расширение.functions.php , содержащий функции используемые данным расширением

Js/

Для хранения JavaScript файлов

lang/

Языковые файлы вида расширение.код_языка.php

lib/

Для хранения JS, CSS, Flv и других файлов

setup/

Дополнительная информация для установки расширений. Формат:

расширение.install.php, расширение.uninstall.php, расширение.install.sql, расширение.uninstall.sql

для файлов обновления: php_версия.inc и sql_версия.sql

tpl/

Шаблоны данного расширения по умолчанию

расширение.setup.php

Установщик расширения

расширение.часть.php

Файлы частей расширения

 

Для системных модулей (users, admin) содержимое директории inc помещено в корневую директорию модуля.

Содержимое директории system:

system/

 

admin/

Модуль админ-панели

users/

Модуль пользователей

auth.php

Набор функций, связанных с распределением прав

cache.php

Библиотека для работы с кешем

common.php

Инициализация страницы.

configuration.php

Функции управления настройками сайта

cotemplate.php

Шаблонизатор

database.php

Библиотека для работы с базами данных

debug.php

Библиотека функций для отладки

extensions.php

Функции установки/удаления/обновления модулей и плагинов

extrafields.php

Добавление/редактирование/Импорт/Вывод экстраполей.

footer.php

Загрузчик подвала страницы

forms.php

Библиотека функций для работы с формами

functions.php

Стандартный набор функций ядра

header.php

Загрузчик шапки

index.php

Заглушка директории

resources.php

Ресурсы. Добавлено в Siena

uploads.php

Функции, облегчающие работу с загруженными на сайт файлами

 



1. milleja46  29.01.2013 00:24

Ok have to admit, the last section on themes is definitely worthwhile to see. Especially would be great in it's own section on a tutorial for writing themes ;)

Добавление комментариев доступно только зарегистрированным пользователям