Я создал плагин при помощи SSH и /engine/console/. Также подключил шаблон, в нём шапку, контент и футер. Но на этом мои идеи в плане реализации плагина не заканчиваются.
Допустим, мой плагин доступен по адресу www.site.ru/plugin/. Я хочу сделать добавление материала, чтобы он выводился на странице /plugin/, то есть создать форму добавления по адресу /plugin/add/.
Скажите, пожалуйста, как создать эту страницу /plugin/add/?
Давайте друзья будем разбераться с модулями и их созданием. На примере стандартного модуля «Pages» (Напомню он отвечает за статические страницы на сайте).
Перейдём в директорию \plugins\ здесь располагаются все подключаемые плагины. Движок сайта анализирует содержимое здешних папок (не будем вдаваться в подробности как именно).
Далее перейдём в папку \page\. Здесь мы видим следующий список файлов и папок: PluginPage.class.php — Здесь описано следующее:
if (!class_exists('Plugin')) {
die('Hacking attemp!');
}
//Перевод строк выше выглядит так если не верно что является классом Плагин страница мертва. Если верно что это плагин, продолжаем работу.
class PluginPage extends Plugin {
/**
* Активация плагина "Статические страницы".
* Создание таблицы в базе данных при ее отсутствии.
*/
public function Activate() {
if (!$this->isTableExists('prefix_page')) {
/**
* При активации выполняем SQL дамп
*/
$this->ExportSQL(dirname(__FILE__).'/dump.sql'); // -< Здесь видно зачем нужен файл базы данных dump.sql ПРи активации модуля выполняется запрос в базу. Запрос содержится как раз в этом файле. Имя его не столь важно... просто в нашем примере это dump.sql
}
return true;
}
/**
* Инициализация плагина
*/
public function Init() {
}
}
plugin.xml — Описание плагина для таблицы модулей по адресу localhost/admin/plugins/ В нём содержится информация об авторе, краткая инфа о модуле и прочее... dump.sql — Файл с SQL запросом на создание таблиц в бд. Используется при выполнении запроса активации в PluginPage.class.php templates.dir — Папка для шаблона модуля classes.dir — Классы используемые в модуле берутся отсюда config.dir — Ну и конфиги… это собственно очевидно
Для того чтобы написать свой первый модуль необходимо придумать дополнения для базы данных (уже используемой движком LS).После этого вы можете сделать экспорт добавленых вами таблиц в файл dump.sql.
Далее собственно работа с классами. Что есть это ютуб вам в помощь. Введя слово классы пхп там можно найти уйму учебного материала.
Некоторое описание стандартных возможностей движка:
На всех страницах принимаюхих любое участие (в любой иерархичности) в работе движка.
Проставлены следующие строки
if (!Условие) {
die('Hacking attemp!');
}
важно что! обозначает «не выполнение». Используется для безопасности выполнения скриптов на сайте.