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

Alllenka

  • Осваиваюсь на форуме
  • 35
  • 1 / 0
Добрый день!
Установила шаблон, в нем не было быстрого старта вот мучаюсь уже неделю пытаясь его отредактировать. Что-то получилось, что-то нет. Задавала вопросы в нескольких темах, но исчерпывающего ответа не получила, решила в надежде на помощь создать новую тему.
Вот файлы index.php,template.css.
http://files.mail.ru/HRADIH
На данный момент не могу расположить при входе на главную страницу чтобы сайт выглядел как на демо версии.


Буду очень признательна если не затруднит мне подсказать что и в каком файле написать чтобы главная загружалась не в пункт меню.
*

Alllenka

  • Осваиваюсь на форуме
  • 35
  • 1 / 0
Помоему в никуда

На рисунке 1 загружается фоновое слайдшоу, а потом гость может выбрать нужное ему меню.

Прикола на счет версии 1,5 нет, я какую скачала,в той и делаю, а что эта версия намного хуже чем 1.6? Делаю первый раз.
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Поддержка разработчиками версии 1.5 если я не ошибаюсь закончится весной. Стоит ли потеть над старьём?
 Вы бы лучше ссылку на демо запостили.
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Смею предположить, что о нас 1 является пунктом меню по умолчанию, следовательно он и загружается.
*

Alllenka

  • Осваиваюсь на форуме
  • 35
  • 1 / 0
Да, и когда я пытаюсь или скрыть или удалить пишет что нельзя, так как это меню по умолчанию)))а переназначить на другое меню нет смысла, так как открывается другое окно. Я не знаю как сделать правильно.
Шаблон  Full Screen 2 фот ссылка на демо версию:
http://www.joomspirit.com/template-joomla/template-full-screen-2/
Я так поняла что сборка, которую я скачала или не полная или битая. Скачивала с 3х разных сайтов и везде одна и та же сборка, к сожалению быстрого старта нет, и черного варианта темы нет, я в ручную переделывала.

« Последнее редактирование: 19.11.2011, 00:54:11 от Alllenka »
*

kepa

  • Захожу иногда
  • 56
  • 1 / 2
Народ подскажите где скачать модуль или плагин для смены фона в статье (материала)? Joomla 1.7
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Дык сделайте другое меню, зазначте в нём пункт по умолчанию или уберите все материалы с главной.
*

Alllenka

  • Осваиваюсь на форуме
  • 35
  • 1 / 0
Только что убрала с главной все материалы все равно показывает пустой блок, хотя блок должен пропадать и меню должно опускаться вниз. Мне бы вообще главную убрать...
*

Alllenka

  • Осваиваюсь на форуме
  • 35
  • 1 / 0
вот так сейчас выглядит главная.
*

wfedin

  • Завсегдатай
  • 1273
  • 102 / 0
Была бы 1.5 под рукой покрутил бы, но я уже давненько переехал с неё. Так что помочь не смогу.
*

Alllenka

  • Осваиваюсь на форуме
  • 35
  • 1 / 0
Да, спасибо большое и на этом, заставили задуматься на счет версии, погуглила, и действительно поддерживать будут только до апреля 2012, пока не поздно переустановлю, тем более что все находится у меня на компе, я делаю первый в жизни сайт для себя, что-то типа визитки-портфолио, хороший знакомый программист, веб дизайнер, уговаривает за пиво сделать мне его, говорит ему работы на 1 вечер. Изначально так и задумывалось. он только попросил поискать мне самой шаблон, пока искала решила делать сама, затянуло, вот и ковыряюсь 2рую неделю, потихоньку изучая тематику.
Сегодня наткнулась на тему о том, что нельзя использовать ворованные шаблоны, этот как раз из их числа, теперь понимаю почему практически ни кто не откликнулся, ну что ж поделать, пусть для большинства опытных программистов я буду "крысой", у каждого своя правда, посему тему закрываю, помощи просить не буду.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Слетели URL и шаблон

Автор max888

Ответов: 2
Просмотров: 5789
Последний ответ 28.12.2020, 17:37:52
от draff
VirtueMart 1.9 шаблон письма

Автор m176

Ответов: 0
Просмотров: 3096
Последний ответ 23.10.2020, 12:38:35
от m176
шаблон IT Newsy - By IceTheme проблема со списком.

Автор wolf34

Ответов: 4
Просмотров: 6038
Последний ответ 30.05.2017, 11:52:27
от darkghost
Как изменить шаблон категории в Joomla 1.5?

Автор nagav

Ответов: 8
Просмотров: 5560
Последний ответ 24.10.2016, 22:09:01
от nagav
Не стал показываться шаблон

Автор rezchik

Ответов: 2
Просмотров: 4964
Последний ответ 14.08.2016, 22:12:50
от rezchik