![]() |
Ссылка на сообщение #1 | ||
Administrator
|
Что такое плагины?
Плагином мы называем набор файлов, организованных по определенным правилам и добавляющих или меняющих логику работы платформы.
Для простоты понимания рассмотрим пример плагина ItemTargetBlank. Стояла задача: все ссылки на товары, открывать в новой вкладке, по аналогии с сайтом https://www.taobao.com/ Структура файлов: packages/ НзаваниеПлагина (основная папка с файлами плагина, например ItemTargetBlank) - НзаваниеПлагинаPlugin.class.php (основной класс плагина, например ItemTargetBlankPlugin.class.php) - config (папка содержащая конфигурационный файл плагина) -- config.xml (файл конфигурации плагина) Для активации плагина, необходимо поместить основную папку плагина в папку packages, например /packages/ItemTargetBlank/ . Файл config.xml имеет вид: X++: <?xml version="1.0" encoding="UTF-8"?> <plugin> <title>Открыть товар в новой вкладке</title> <description>Все ссылки на товары будут открываться в новой вкладке (по аналогии с сайтом taobao)</description> <version>1.0.0</version> <events> <event name="onAfterRenderFooter" /> </events> </plugin> Основная логика плагина содержится в файле ItemTargetBlankPlugin.class.php. Мы постарались минимизировать навязываемые стандарты к написанию данного файла. Вот ряд правил, которые необходимо соблюдать: - класс должен называться по названию НзаваниеПлагинаPlugin (например ItemTargetBlankPlugin) - класс должен быть унаследован от GeneralPlugin Класс плагина содержит методы, название которых соответствует названию событий заявленных в файле конфигурации. Например: public function onAfterRenderFooter($vars = array()) { ... } Класс плагина может содержать метод public function renderPluginPage($request) - метод должен вернуть html. Этот html будет отображен администратору сайта в админке сайта. На самом деле в этом методе можно организовать свой роутинг и сделать админку внутри админки. Все ограничено лишь Вашей фантазией. Рецепты: - Если администратор сайта изменяет статус строки заказа на "Готово к отправке", необходимо отправить sms уведомление покупателю. |
||
|
|||
За это сообщение автора поблагодарили: Данияр (31), Анна Сердюкова (3). |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Что такое "корень сайта" и как его найти? | Evgeniya Zykova | База Знаний | 32 | 04.02.2014 10:25 |
Как добавить социальные плагины? | Leepey | Рабочие вопросы | 5 | 30.03.2013 06:47 |
Хостинг: что такое, зачем нужен, как регистрировать | Tatyana_S | Приемная | 5 | 25.02.2013 17:11 |
Что такое "Интервал отображаемых страниц в постраничном разбиении"? | Ольга Бабушкина | Рабочие вопросы | 2 | 01.02.2013 11:13 |
Что такое домен и как его регистрировать? | Tatyana_S | Приемная | 3 | 29.01.2013 17:31 |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|