# Структура модуля

Модули располагаются в папке **modules**\
Обычно модуль для JohnCMS имеет следующую структуру:

* modules
* * module\_name
  * * includes
    * locale
    * templates
    * index.php

Данная структура носит лишь рекомендательный характер и не является обязательной.\
Система не накладывает ограничений на разработчика и разработчик вправе использовать свою структуру модуля, которая для него будет удобнее.&#x20;

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

**modules** - это обычная системная папка с модулями.\
**module\_name** - это папка с названием модуля (например forum, community и т.п.)\
**includes** - папка для дополнительных страниц. Её может и не быть если модуль достаточно простой и не содержит большого количества страниц.\
**locale** - это папка в которой хранятся файлы локализации модуля. Если модуль мультиязычный, то эта папка обычно есть.\
**templates** - в этой папке хранятся шаблоны модуля.\
**index.php** - Этот файл обычно служит точкой входа в модуль и содержит программный код или часть кода всего модуля.
