При разработке плагина для Moguta.CMS необходимо организовать структуру файлов плагинов таким образом, чтобы он был успешно воспринят ядром движка и подключен в раздел плагинов в панеле управления сайтом. Для этого необходимо в файле index.php указать метаданные.
Метаданными в данном контексте будем называть информацию о плагине, считывается и обрабатывается движком Moguta.CMS:
Объявить метаданные просто, для этого нужно в начале файла index.php указать их в php комментарии вот таким образом:
<?php
/*
Plugin Name: Мой первый плагины
Description: Описание плагина
Author: Moguta.CMS Version: 1.0.0
*/
На самом деле единственным и необходимым в плагине файлом является файл index.php, в некоторых случаях достаточно именно этого файла для полноценной работы плагина. Структура файлов и папок может быть организована разработчиком на свое усмотрение, но мы предлагаем взять за основу следующую структуру:
Если в структуре плагина существуют файлы index.php, readme.txt и папка locales/ с файлами вида ru_RU.php, то эти файлы будут автоматически считываться и использоваться ядром движка для взаимодействия с плагином.
index.php - основной файл, он будет подключаться движком в исполняемый код перед началом генерации страницы для ответа в браузер. Таким образом все функции и классы определенные в этом файле станут доступны в любом месте исполняемого кода. В том числе и во всех php файлах шаблона. Мы рекомендуем оборачивать содержимое программной логики в файле index.php в класс с уникальным названием, чтобы избежать конфликтов с одноименными функциями, которые могут быть использованы в других плагинах, разработанных другими разработчиками.
readme.txt - файл с инструкцией, поддерживает HTML верстку. Все, что написано в этом файле будет открываться пользователю по клику на иконку инструкции к плагину. Также в тексте этого файла можно использовать дериктиву #SITE# это может понадобиться для формирования корректной ссылки на картику в папках плагина, пример испльзования: <img src="#SITE#/mg-plugins/mg-yandex-map-marks/readme/img2.png">.
locales/ - движок поддерживает использование файлов локалей для плагинов, при выборе пользователем определенного языка на сайте. Файлы из этой папки будут подключены к общему файлу локалей сайта.
Все остальные файлы и папки могут быть организованы любым удобным для вас способом.