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

Lunat34

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Искал где приткнуть тему, надеюсь разделом не ошибся.
Помогите определиться с расширениями, весь мозг поломал уже.  :'(

Суть проблемы в чем - создается проект на чистой свежей Joomla в три раздела.
1. аналог вики. Тут вообще никаких мыслей на чем реализовать, не то что на чем лучше.
2. форум. Чем больше возможностей, тем лучше. Пока думаю Kunena, но мало ли, может есть и получше.
3. чаты. Тоже пока не определился ни в каком виде. Но по требованиям следующее - вроде комнаты чатов, где любой зарегистрированый юзер может создать общий или приватный чат с указанием имени чата и времени его жизни. Ну и возможность приглашения в чат зарегистрированных юзеров очень бы хотелось.

Проект не коммерческий и полностью на добровольных началах, поэтому все расширения планируются бесплатные.

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

SeBun

  • BanMaster
  • 4030
  • 259 / 5
  • @SeBun48
1. JbZOO
2. phpBB3
3. Расширение для phpBB3 - море, выбирайте понравившийся.

А вот после того, как все это заработает и будет выработана определенная стратегия, появиться видение дальнейшего развития и вы решите начинать коммерческий стартап, придется заказывать разработку.
Оказываю услуги по Joomla | Миграция/Обновление | Сопровождение | IT-аутсорсинг | Недорогие домены и хостинг
*

Lunat34

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
1. JbZOO? Мне не магазин, мне аналог вики, с примерным функционалом и назначением. медиавики думал, но вроде их с Joomla перестали дружить  много лет назад.
3. Расширений в каждом направлении море. Было бы 2-3 может и не спрашивал совета)
Ну и коммерческий проект в перспективе не предусматривается принципиально. Долго рассказывать. Дело не в лени и жадности, так надо.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
1. вам нужен cck, jbzoo для этого идеально подходит, а фри-версия не содержит корзины
*

Lunat34

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Хорошо, попробую поваять из этого. Спасибо за советы.
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
вам надо определится с ядром.
я бы посоветовал vbulletin, там и форум, лучший на сегодня, и ядро.
но скорее всего мост будете ставить, т.к. в булке нет идеальной админки.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

Lunat34

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

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
на шару только уксус сладкий! (с)
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

Lunat34

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
на шару только уксус сладкий! (с)
И это говорит пользователь бесплатной Joomla, чаще всего лежащей на серваке с бесплатным линуксом)).
Я же говорил - проект принципиально некоммерческий.
*

SeBun

  • BanMaster
  • 4030
  • 259 / 5
  • @SeBun48
Не хочется иметь гимор постоянных допиливаний при апдейтах - не хватает ни знаний, ни времени.
Любой стартап требует вложений. Даже что бы поймать рыбку в преду нужно поднять задницу, потащить ее копать червей, потом на речку, потом забросить удочки, ждать, ждать... и успеть в нужный момент подсечь. Так и здесь. Сделать сайт мало - в него нужно вложиться, что бы получить отдачу. Все, что я порекомендовал, легко к освоению, просто ставьте, настраивайте, учитесь управлять. Сможете заинтересовать своей идеей людей - купите лицензии на более продвинутые расширения. Я бы с булки (vbulletin) начинать не стал, Kunena даже уместнее будет, т.к. уже интегрирована в движок и имеет минимум настроек. Вот вам и связка - Joomla+Kunena+JbZoo free - уже готовый сайт. phpBB3 - бесплатный, намного функциональнее Kunena, но нужен либо мост, либо отдельная регистрация, отдельный шаблон. Зато можно разделить - папку с форумом отделить от папки сайта, засунуть на субдомен и настроить права так, что бы при взломе форума не залились на сайт. Чат...ну чат я не подскажу, никогда не ставил ни себе, ни другим, поищите на JED. Для начала вам хватит. Ну а дальше, когда сформируется окончательное видение проекта, вы сами примите нужное решение.
Оказываю услуги по Joomla | Миграция/Обновление | Сопровождение | IT-аутсорсинг | Недорогие домены и хостинг
*

SeBun

  • BanMaster
  • 4030
  • 259 / 5
  • @SeBun48
Re: Прошу совета по подбору расширений
« Ответ #10 : 17.02.2017, 14:14:44 »
И это говорит пользователь бесплатной Joomla, чаще всего лежащей на серваке с бесплатным линуксом)).
Вы дышите бесплатным воздухом, но никто не мешает вам воздух закрывать в банки и продавать... Вы продаете свой труд + себестоимость банки. С бесплатным воздухом.
Оказываю услуги по Joomla | Миграция/Обновление | Сопровождение | IT-аутсорсинг | Недорогие домены и хостинг
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: Прошу совета по подбору расширений
« Ответ #11 : 17.02.2017, 14:21:47 »
И это говорит пользователь бесплатной Joomla, чаще всего лежащей на серваке с бесплатным линуксом)).
Я же говорил - проект принципиально некоммерческий.

А с чего вы взяли, что я бесплатный пользователь, ещё и Joomla?
Я вам совет дал, правильный, а вы сарказмичаете.

// бесплатная Joomla и код, не говорит, что юзеры бесплатные.
к слову.
« Последнее редактирование: 17.02.2017, 14:39:34 от vipiusss »
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

Lunat34

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Re: Прошу совета по подбору расширений
« Ответ #12 : 17.02.2017, 14:42:37 »
А с чего вы взяли, что я бесплатный пользователь, ещё и Joomla?
Я вам совет дал, правильный, а вы сарказмичаете.
Прошу прощения если задел. Но при входящих условиях совет может и правильный, но малопригодный.

SeBun, все так, но коммерческой отдачи не планируется впринципе, а массовые трудозатраты это всегда само собой разумеющееся.

Попробую пожалуй поковырять связки Joomla+Kunena+JbZoo и Joomla+Kunena+mediaWIKI+MediaWiki bridge. Уж больно некоторые вещи в вики нравятся, которые пока нигде не реализованы.

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

Прошу подсказать путь решения

Автор Аnharazd

Ответов: 10
Просмотров: 866
Последний ответ 29.03.2021, 20:06:59
от Taatshi
Прошу помощи!

Автор hellotom

Ответов: 16
Просмотров: 860
Последний ответ 15.06.2017, 11:58:34
от Septdir
*** Прошу помочь в поиске компонента для Joomla 3.0

Автор Michelle13

Ответов: 4
Просмотров: 1196
Последний ответ 02.08.2014, 23:09:41
от sergoguga
Дешёвый Интернет магазин расширений

Автор Kot_UA

Ответов: 14
Просмотров: 1152
Последний ответ 10.06.2014, 01:15:49
от ELLE
Разработчики расширений

Автор wd

Ответов: 2
Просмотров: 900
Последний ответ 13.02.2014, 18:46:31
от MetaSpirit