1.10.5 Вызов компонента в плагине
Основные компоненты:
Статьи
$this->events[] = 'GET_ARTICLE';
Блоги
$this->events[] = 'GET_POST';
Объявления
// $this->events[] = 'GET_BOARD_RECORD';
а как вызвать премиум компонент iVideo и iMaps?
у Видео как я поняла GET_ROUTE_VIDEO? а в Мапс вообще не нашла.
Если вам нужно вызвать компонент, то подключаете файл фронтэнда и вызываете функцию компонента, например content(), а еще более наглядно вызывается компонент комментариев.
То, что вы видимо хотите, это просто обслужить нужный вам эвент. Эвенты проставляет разработчик в нужных, на его взгляд, местах. Кстати в двойке эвенты названы хуками, но смысл в принципе тот же.
Например, если рассмотреть эвент GET_ARTICLE, то он вызывается при получении массива данных статьи и ему этот массив передается для изменения/дополнения/удаления содержимого этого массива, в зависимости от цели плагина.
Для этого нужно знать их названия и что им передается. Это можно узнать у разработчиков.а как вызвать премиум компонент iVideo и iMaps?
Этому эвенту передается массив роутинга видеокаталога в большинстве случаев для его динамического дополнения. Но кроме него есть еще очень много эвентов на разные действия. Уточнить нужные вам эвенты можно, повторюсь, у разработчиков.у Видео как я поняла GET_ROUTE_VIDEO
Для этого нужно знать их названия и что им передается. Это можно узнать у разработчиков.
повторюсь, у разработчиков.
Хорошо разработчик, спасибо)
Насколько я помню, строчки вида
$this->events[] = 'ИМЯ_ЛОВУШКИ';
В целом механизм срабатывания плагинов таков: например у тебя в компоненте стоит ловушка плагина ИМЯ_ЛОВУШКИ.
$item = cmsCore::callEvent('ИМЯ_ЛОВУШКИ', $item);
ИМЯ_ЛОВУШКИ ->обращение к ядерному методу callEvent() -> обращение к таблице БД "cms_plugins" и формирование массива включеных плагинов -> перебор этого массива и поиск плагина с именем ловушки ИМЯ_ЛОВУШКИ ->передача данных этому плагину и выполнения метода плагина, соответствующего данной ловушке -> отправка данных, полученных плагином в результате его работы обратно в ядро -> возвращение данных плагина из ядра в ту точку компонента, откуда плагин вызывался.
Таким образом, строчка в компоненте
$item = cmsCore::callEvent('ИМЯ_ЛОВУШКИ', $item);
Вот и вся кухня плагинов. Все просто.
PS. И ваще ты вот эту статью в моем блоге читала? Там все подробно расписано.