Новости 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 Гость просматривают эту тему.
  • 7 Ответов
  • 2384 Просмотров
*

Evgg

  • Захожу иногда
  • 130
  • 2 / 0
"скачет" шаблон
« : 20.03.2009, 15:06:32 »
шаблон JA_purity
левая колонка, при сужении окна браузера, "сваливается" вниз. Это наблюдается в IE6.
для наглядности, вот сайт: http://bikeform.net.ru/
Повторяюсь, прошу прощения, т.к. уже задавал этот вопрос.
Но не смог ничего своими силами исправить, как ни пытался. Сваливается, и все.
Господа, если кто решал подобную проблему, подскажите пож-та.
*

gdX

  • Глобальный модератор
  • 995
  • 128 / 0
  • Открыт к заказам по дизайну
Re: "скачет" шаблон
« Ответ #1 : 20.03.2009, 15:13:53 »
В ff при сужении окна до получения нижнего скрола тоже начинаются глюги.
Попробуйте изменить размер окна и промотать скрол вправо.
*

Evgg

  • Захожу иногда
  • 130
  • 2 / 0
Re: "скачет" шаблон
« Ответ #2 : 20.03.2009, 15:37:01 »
Цитировать
В ff при сужении окна до получения нижнего скрола тоже начинаются глюги.
Попробуйте изменить размер окна и промотать скрол вправо.

- у меня как будто все нормально. А что за глюки  вы заметили?
*

marik_86

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: "скачет" шаблон
« Ответ #3 : 20.03.2009, 16:24:07 »
Ребята, послушайте совет:
- изучайте css
- изучайте html
 - изучайте php

По поводу темы. Я же Вам вчера давал ссылку.На том сайте в разделе статей есть описание Вашей проблемы. Не ждите, что Вам все приготовят и за Вас сайт сделают. CMS разработку упрощает, но базовые знания у разработчика нужны в любом случае.
По поводу Joomla: пока не перепишешь многих компонентов/модулей, сайты будут ужасными (в плане верстки) . Еще один повод изучить вышеперечисленное.
*

Evgg

  • Захожу иногда
  • 130
  • 2 / 0
Re: "скачет" шаблон
« Ответ #4 : 20.03.2009, 17:04:32 »
Цитировать
- изучайте css
- изучайте html
 - изучайте php

параллельно изучаю.
Хотя, с другой стороны, вспомнился фильм какой-то.
Инспектору, налоговому что-ли, вынесли ящик, полный разных бумажек, квитанций. И сказали:
- ну, ищите. То что вам нужно где-то здесь.
*

Evgg

  • Захожу иногда
  • 130
  • 2 / 0
Re: "скачет" шаблон
« Ответ #5 : 20.03.2009, 20:40:20 »
ни-че-го не получается...  :(
*

marik_86

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Re: "скачет" шаблон
« Ответ #6 : 20.03.2009, 22:50:53 »
Не получе
ни-че-го не получается...  :(
Подумай сам, почему не получается ;)
Есть желание - есть действие!
Обрати внимание на то, какие значения ты выставил ширине float-нутым блокам. Дальше прочти статью на сайте, который я тебе рекомендовал. (касается "прыгучести" блоков)
Самое лучшее обучение - самообучение. Спросишь одно - тебе скажут раз, второй, третий. Но не всегда! А сам научишься, сам помогать будешь.
*

AnnaOl

  • Захожу иногда
  • 209
  • 0 / 0
Re: "скачет" шаблон
« Ответ #7 : 26.07.2009, 21:27:40 »
Не получеПодумай сам, почему не получается ;)
Есть желание - есть действие!
Обрати внимание на то, какие значения ты выставил ширине float-нутым блокам. Дальше прочти статью на сайте, который я тебе рекомендовал. (касается "прыгучести" блоков)
Самое лучшее обучение - самообучение. Спросишь одно - тебе скажут раз, второй, третий. Но не всегда! А сам научишься, сам помогать будешь.

Выложите ссылку на статью, пожалуйста... А то у меня схожая проблема.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Невозможно назначить шаблон по умолчанию

Автор Jons$

Ответов: 3
Просмотров: 3912
Последний ответ 16.04.2015, 06:57:06
от Petrofrk
Шаблон описания - как осуществить?

Автор OlgaK

Ответов: 1
Просмотров: 1246
Последний ответ 14.08.2014, 10:52:15
от OmniWizard
[Решено] Шаблон списка категории

Автор DFor

Ответов: 6
Просмотров: 4434
Последний ответ 10.09.2013, 17:28:21
от melkiialex
Шаблон на Artisteer3 как footer прижать к земле?

Автор Sektor38

Ответов: 28
Просмотров: 5597
Последний ответ 03.10.2012, 15:15:17
от sebrotaller
(Шаблон) проблемы с шапкой

Автор Bulijen

Ответов: 5
Просмотров: 1574
Последний ответ 31.07.2012, 09:31:05
от Bulijen