проект статьи
medar |
|
---|---|
Что такое плагин?
Это php-код, который в дальнейшем инклюдится (вставляется) в код CMS в определенных местах, называемых "хуками". Плагины расширяют функционал сайта. Плагин представляет собой папку с файлами, находящуюся в папке plugins. Название папки должно совпадать с именем плагина. Негласное соглашение - в имени плагина юзать только буквы английского алфавита и знак подчеркивания. Пусть наш плагин называется pluginname Он должен/может содержать следующие файлы: Файл сетапа плагина: pluginname.setup.php - название должно быть строго таким. Файл обязательно должен быть. Внутри в начале должна быть следующая конструкция: <?php
/* ====================
[BEGIN_SED_EXTPLUGIN]
Code=pluginname
Name=Plugin name
Description=
Notes=
Version=1.0
Date=
Author=
Auth_guests=R
Lock_guests=W12345A
Auth_members=RW
Lock_members=12345A
[END_SED_EXTPLUGIN]
[BEGIN_SED_EXTPLUGIN_CONFIG]
[END_SED_EXTPLUGIN_CONFIG]
==================== */
if ( !defined('SED_CODE') ) { die("Wrong URL."); }
Code - имя плагина Name - название плагина, в вольной форме Description - описание работы Notes - вторая строка описания Date - дата создания Author - автор плагина Дальше идут права юзеров при работе с данным плагином. Об этом в другом месте. Фактически, обязательное поле здесь только одно - Code= , но параметры прав доступа (Auth_ , Lock_) лучше все же не стирать. Файл(ы) собственно плагина: another_work_file.php - название может быть произвольным (главное, чтобы оно совпадало с File= внутри этого файла). Но опять же принято называть их по образу pluginname.zone.php , где zone - это зона действия плагина (header, page, list, index, etc). Это не связано с системой, это применяется исключительно для лучшей читаемости. Название файла может быть любым. Пусть файл называется pluginname.pagetags.php Итак, его содержимое: <?php
/* ====================
[BEGIN_SED_EXTPLUGIN]
Code=pluginname
File=pluginname.pagetags
Part=main
Hooks=page.tags
Tags={MY_TAG}, {MY_ANOTHER_TAG}
[END_SED_EXTPLUGIN]
==================== */
if (!defined('SED_CODE')) { die('Wrong URL.'); }
Поля Code, File и Hooks - обязательные. Code - имя плагина (должно совпадать с Code в pluginname.setup.php) File - имя данного файла (без .php) Part - Возможно, область обработки вывода результатов работы плагина в tpl. Доподлино неизвестно, что это значит этот параметр, документация Seditio хранит молчание на этот счет. Возможно, это недоработанная вещь. Как правило прокатывает там ставить main. Hooks - Хук (место в ядре движка), где будет происходить подключение плагина. Список всех хуков - здесь (надо бы его расписать с комментариями). Tags - тэги, которые создает данный плагин. Их нужно записать в нужное место шаблонов, которые затрагивает плагин, и туда будет выводиться html-контент, формируемый плагинами. Файлы инсталляции/деинсталляции pluginname.install.php pluginname.uninstall.php Это опциональные файлы. Название - строгое. Внутренний формат - произвольный. Автоматически выполняются соответственно при включении и выключении плагина. Эти файлы нужны для плагинов, которые добавляют для своей работы дополнительные таблицы в базу, новый ббкоды в редактор или новые поля для страниц. rangjungyeshe.ru
|