Новости Joomla

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

👩‍💻 Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод triggerEvent(), с помощью которого раньше вызывались события для плагинов. Теперь чтобы в своём коде вызвать событие для плагина и получить от него результаты нужно:- создать объект класса события- передать в него параметры

use Joomla\CMS\Event\AbstractEvent;use Joomla\CMS\Factory;use Joomla\CMS\Plugin\PluginHelper;// Грузим плагины нужных группPluginHelper::importPlugin('system');// Создаём объект события$event = AbstractEvent::create('onAfterInitUniverse', [    'subject' => $this,    'data'    => $data, // какие-то данные    'article' => $article, // ещё материал вдовесок    'product' => $product, // и товаров подвезли]);// Триггерим событиеFactory::getApplication()->getDispatcher()->dispatch(    $event->getName(), // Тут можно строку передать 'onAfterInitUniverse'    $event);// Получаем результаты// В случае с AbstractEvent это может быть не 'result',// а что-то ещё - куда сами отдадите данные.// 2-й аргумент - значение по умолчанию, // если не получены результаты$results = $event->getArgument('result', []);
Плюсы такого подхода - вам не нужно запоминать порядок аргументов и проверять их наличие. Если вы написали свой класс события, то в плагине можно получать аргументы с помощью методов $event->getArticle(), $event->getData(), $event->getProduct() и подобными - реализуете сами под свои нужды. Если такой класс события написали, то создаёте экземпляр своего класса события и укажите его явно в аргументе eventClass
use Joomla\Component\MyComponent\Administrator\Event\MyCoolEvent;$event = MyCoolEvent::create('onAfterInitUniverse', [    'subject'    => $this,    'eventClass' => MyCoolEvent::class, // ваш класс события    'data'       => $data, // какие-то данные    'article'    => $article, // ещё материал вдовесок    'product'    => $product, // и товаров подвезли]);
Ожидаемо, что класс вашего события будет расширять AbsractEvent или другие классы событий Joomla.🙁 Есть неприятный нюанс - нельзя просто так вызывать событие и ничего не передать в аргументы. Аргумент subject обязательный. Но если вы всё-таки не хотите туда ничего передавать - передайте туда пустой stdClass или объект Joomla\registry\Registry.
@joomlafeed#joomla #php #webdev

0 Пользователей и 1 Гость просматривают эту тему.
  • 8 Ответов
  • 2377 Просмотров
*

skai

  • Завсегдатай
  • 1198
  • 153 / 1
  • skaiseo
[Решено] Joomla51 - куплю!
« : 24.06.2010, 16:35:22 »
Требуется несколько шаблонов от Joomla51 - необходима помощь в приобретении. Сам оплатить не могу - нет PayPal, точнее не могу пополнить - не использую карточки (их просто нет и не планируется)).

Вопросы «Почему..» и «Как так..» ни к месту. Если можете помочь в оплате отдам Webmoney +2$ за шаблон. Требуется только оплатить.
Возможны другие условия - предлагайте.

Актуально в течении 72 часов.


 
« Последнее редактирование: 11.07.2010, 22:25:51 от 4webspot »
Наполнение вашего сайта - 1т.р. стр. (текст, изображения, мета, перелинковка). Гарантия высокого ранжирования. SEO консультация в подарок.
----------------------------------------------------------------------------------------------
*

frag79

  • Давно я тут
  • 612
  • 61 / 0
Re: Joomla51 - куплю!
« Ответ #1 : 24.06.2010, 16:46:54 »
Сам оплатить не могу - нет PayPal, точнее не могу пополнить - не использую карточки (их просто нет и не планируется)).
Используйте Visa Virtual терминалов QIWI (КИВИ). Без проблем пополняли PayPal.
http://habrahabr.ru/company/qiwi/blog/70375/
*

Nusinam

  • Захожу иногда
  • 63
  • 4 / 0
Re: Joomla51 - куплю!
« Ответ #2 : 24.06.2010, 16:59:58 »
Напишите в личку, есть Pay Pal аккаунт
« Последнее редактирование: 24.06.2010, 17:03:16 от Nusinam »
*

skai

  • Завсегдатай
  • 1198
  • 153 / 1
  • skaiseo
Re: Joomla51 - куплю!
« Ответ #3 : 24.06.2010, 19:21:34 »
Используйте Visa Virtual терминалов QIWI (КИВИ). Без проблем пополняли PayPal.
http://habrahabr.ru/company/qiwi/blog/70375/

ёу.. спаибо - видно я отстал от жизни - буду догонять)
Наполнение вашего сайта - 1т.р. стр. (текст, изображения, мета, перелинковка). Гарантия высокого ранжирования. SEO консультация в подарок.
----------------------------------------------------------------------------------------------
*

skai

  • Завсегдатай
  • 1198
  • 153 / 1
  • skaiseo
Re: Joomla51 - куплю!
« Ответ #4 : 24.06.2010, 19:22:06 »
Напишите в личку, есть Pay Pal аккаунт

Спасибо, воспользуюсь киви.
Наполнение вашего сайта - 1т.р. стр. (текст, изображения, мета, перелинковка). Гарантия высокого ранжирования. SEO консультация в подарок.
----------------------------------------------------------------------------------------------
*

Nusinam

  • Захожу иногда
  • 63
  • 4 / 0
Re: Joomla51 - куплю!
« Ответ #5 : 24.06.2010, 19:31:35 »
Сорри за маленький оффтоп:

А что за проблема с PayPal в России?
*

skai

  • Завсегдатай
  • 1198
  • 153 / 1
  • skaiseo
Re: Joomla51 - куплю!
« Ответ #6 : 24.06.2010, 19:46:57 »
нет проблем если у вас карточка VISA есть.
Наполнение вашего сайта - 1т.р. стр. (текст, изображения, мета, перелинковка). Гарантия высокого ранжирования. SEO консультация в подарок.
----------------------------------------------------------------------------------------------
*

vaganofff

  • Захожу иногда
  • 125
  • 3 / 1
Re: Joomla51 - куплю! [Решено]
« Ответ #7 : 24.06.2010, 20:17:58 »
Сорри за маленький оффтоп:

А что за проблема с PayPal в России?
проблема есть, приведу пример:у нас в городе, когда я делал вкард для пайпала, оказалось, что я второй кто делал это из 100К населения, в банках делают большие круглые глаза при слове PayPal, хотя тоже задумчиво так предлагают открыть виза, и "возможно" ими можно будет оплатить что-то в интернете...
*

Nusinam

  • Захожу иногда
  • 63
  • 4 / 0
Re: Joomla51 - куплю! [Решено]
« Ответ #8 : 08.07.2010, 00:33:22 »
Хех, мне на мою просьбу открыть Виза Голд в моём маленьком городке (пригород Киева) тоже сделали круглые глаза и провели к начальнице)))))
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Решено. Шаблон YooMilk где исправить Continue Reading ?

Автор Nino

Ответов: 3
Просмотров: 4037
Последний ответ 18.07.2015, 14:14:57
от rukodelie
(Решено) Редактирование index.php шаблона сайта

Автор Алексей111

Ответов: 1
Просмотров: 5108
Последний ответ 01.03.2013, 11:24:02
от kirill007
[Решено] Артефакты в меню

Автор Xavibeat

Ответов: 2
Просмотров: 1918
Последний ответ 12.12.2012, 13:20:34
от Xavibeat
[Решено]Шаблон JA_PURITY II или как убрать YOU ARE HERE

Автор sma858

Ответов: 16
Просмотров: 15121
Последний ответ 26.06.2012, 14:10:38
от eXereS
не выводятся ошибки и предупреждения в шаблоне [решено]

Автор lottis

Ответов: 1
Просмотров: 1487
Последний ответ 19.04.2012, 00:26:57
от lottis