K4:Структура директорий
From In-Portal Developers Guide
Path to article:
| ||
---|---|---|
Статьи в этой категории | ||
|
Проекты, написанные с использованием K4 имеют модульную структуру. Каждый модуль представляет из себя директорию, находящуюся в корневой директории сайта. У всех модулей одинаковая структура поддиректорий, которая показана ниже:
название | описание |
---|---|
module/admin_templates | Директория, в которой находятся шаблоны модуля, используемые в административной консоли. |
module/admin_templates/img | Директория, в которой находятся изображения общей применяемости модуля. |
module/admin_templates/img/icons | Директория в которой находятся пиктограммы для отображения в левом меню (дереве) в административной консоли и над списками. Подробнее о том, как должны называться файлы, находящиеся в этой директории, написано здесь. |
module/admin_templates/img/itemicons | Директория, в которой находятся пиктограммы, отображаемые рядом с каждой записью в списке записей (только для In-Portal). Название файлов, находящихся в этой директории должны начинаться с префикса "icon16_ " и подчиняться правилам назначения имён.
|
module/admin_templates/img/toolbar | В данной директории находятся пиктограммы для каждой кнопки на панели инструментов, которая уникальна для конкретного модуля. О том, как называть пиктограммы, используемые на панели инструментов написано здесь. |
module/install | В этой директории находятся файлы, используемые для установки конкретного модуля. |
module/units | Директория, содержащая PHP код. |
Ниже применяются следующие сокращения:
prefix - префикс от unit config в единственном числе, напр. event (в единственном числе, из-за правил английского языка) prefixx - префикс от unit config, только во множественном числе helper - класс помощник (наследник от класса kHelper)
Расположение файлов
- для каждого префикса создаётся директория
prefixx
(напр.themes
) - в этой директории должен быть как минимум один файл -
<directory_name>_config.php
, содержащий unit config - все остальные файлы в директории называются согласно правилу названия файлов
- также, в директории
units
от модуля, можно создать 2 независимые директорииhelpers
иsections
. В директориюhelpers
надо класть все независимые (т.е., те с которыми будет работать не только один prefix) helpers. В директориюsections
нужно класть все классы, которые заменяют другие классы. Для обеих директорий соответственно надо создать (или скопировать из другого проекта) unit configs. - в корневой директории модуля (напр. custom) можно создать файл constants.php в котором можно задать все необходимые для конкретного проекта константы.
Какие файлы можно менять
Допускается изменение файлов в следующих директориях:
- директория модуля
"custom"
(весь специфичный для проекта код)<project_name>/custom
- директория с темой для Front-End
<project_name>/themes/theme_<project_name>
В отдельных случаях, напр. когда
- требуемой функциональности не достичь без изменения файлов K4
- требуется сделать частичный upgrade проекта (для экономии времени)
можно менять остальные файлы, но предварительно требуется получить разрешение от своего руководителя.