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

makkons

  • Осваиваюсь на форуме
  • 28
  • 0 / 0
Всем привет!
А я в админку вошел, спасибо автору темы!
Но не могу зайти ни в плагины ни в модули, никуда одним словом.
В чем может быть проблема?
Добрый день, только что столкнулся с похожей проблемой!
Если у вас есть другие сайты со 100% рабочими БД, то попробуйте через phpMyAdmin скопировать рабочие таблицы:
"users"
"usergroups"
"user_usergroup_map"
Мне помогло...
*

hamster1

  • Новичок
  • 9
  • 0 / 0
Автору - большое спасибо! Помогло.

После входа - вот такая же ситуация:



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

Вопрос - из-за чего вообще возникает подобная ошибка? Как я понял - это из-за какой-то ошибки в БД. У меня это уже второй раз вылазит за последние полтора месяца (собственно с момента запуска сайта). Закономерности отследить пока не удалось.
*

pharaoh

  • Захожу иногда
  • 426
  • 53 / 0
hamster1, вроде чистка кеша, куки и проверка работоспособности сессий (место на диске, доступ к папке, целостность таблиц БД) решали такую проблему.
*

vorfey

  • Захожу иногда
  • 94
  • 1 / 0
У меня такая же проблема! Захожу в админку с помощью этого скрипта, а там пусто, как на скрине сообщением выше. Как решить проблему? Нажимаю на выход, а никакой реакции!
*

koyot777

  • Захожу иногда
  • 136
  • 1 / 2
  • Не щекочи койота..

Скачать: Joomla 2.5 Super Users Login



НЕвозможно скачать файлик ((, столкнулся с такой проблемой что непускает в админку а сроки горят, два дня уже не могу ничего с этим поделать. Пожалуйста выложите ктонибудь этот файл
*

koyot777

  • Захожу иногда
  • 136
  • 1 / 2
  • Не щекочи койота..
логин не терял, пароль помню, ничего не отключено, но не пускает в админку пишет "У вас нет доступа к панели управления сайтом."
смотрел все советы что здесь опубликованы (стоит rs_firewall) сайт на ТОПСЕРВЕРЕ локально, плагины аунтентификации включены, сессии чистил, удалил и rs_firewall, заменил файлы админки и др теми что идут по умолчанию и всеравно недает войти
« Последнее редактирование: 29.01.2014, 13:42:00 от koyot777 »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
koyot777 сделайте бекап и залейте поверх дистрибутив Joomla вашей версии и попробуйте в configuration.php файл в корне сайта изменить параметр на public $session_handler = '';
*

koyot777

  • Захожу иногда
  • 136
  • 1 / 2
  • Не щекочи койота..
нашел причину, таблица assets оказалась пустая, импортировал с рабочего сайта и вошел  8)

как так случилось что пропали данные нистого ниссего...
*

aptus

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
После перехода с Joomla 1.5 на 2,5, с помощью jupgrade перестала работать админка  - лиш только в "панель управления" -> "общие настройки". Перерыл весь  "поиск", и по совету хост.поддержки, уже не соображая, тупо отключил все плагины! Авторизацию Joomla тоже.
 Попал в админку только благодаря файлу log.php, но верхнего меню не отражалось. В другой вкладе открыл другой свой сайт, прошел там в менеджер плагинов, скопировал в адресной строке браузера окончание адреса, вставил в адрес вкладки с больным сайтом - открылся менеджер плагинов! Включил плагины, удалил log.php
А вся проблема после апгрейда оказалась в старой, не соответствующей версии РНР на сервере.
*

Crusader_12

  • Осваиваюсь на форуме
  • 44
  • 8 / 2
Раньше пользовался периодически этим файликом, а теперь он на 3.9 не работает, может кто нибудь обновит его под новую версию?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

WT Telegram bot - отправка данных из Joomla в Telegram-бота

Автор sergeytolkachyov

Ответов: 4
Просмотров: 2822
Последний ответ 01.08.2025, 09:26:57
от sergeytolkachyov
Модуль вывода новостей. Joomla 3.x

Автор fbr

Ответов: 54
Просмотров: 28624
Последний ответ 22.07.2025, 10:13:22
от fbr
JL Like - Социальные кнопки для Joomla (новый взгляд)

Автор zikkuratvk

Ответов: 636
Просмотров: 106578
Последний ответ 07.07.2025, 11:00:34
от zikkuratvk
Плагин для закрытия ссылок в Joomla 3 - noExternalLinks

Автор buyanov

Ответов: 65
Просмотров: 18858
Последний ответ 06.04.2025, 02:51:35
от azm1n
SW JProjects - Менеджер цифровых проектов для Joomla! CMS™

Автор Septdir

Ответов: 59
Просмотров: 9034
Последний ответ 24.03.2025, 13:06:54
от sergeytolkachyov