Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 2 Next »

Проекты, написанные с использованием 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>

Файлы в остальных папках изменять и делать commit запрещено.

В отдельных случаях, напр. когда

  • требуемой функциональности не достичь без изменения файлов K4
  • требуется сделать частичный upgrade проекта (для экономии времени)

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

  • No labels