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

oleg856

  • Новичок
  • 7
  • 0 / 0
Здравствуйте. Возник такой вопрос: если я приобрету модуль оплаты для Яндекс.Деньги (не бесплатный), установлю через JoomShopping, то каким образом клиент после оплаты автоматически получит электронный товар? Приходит ссылка на файл на электронную почту? Или как-то по-другому?
*

nevigen

  • Moderator
  • 10449
  • 863 / 25
  • http://n*****n.com
от плагина оплаты это не зависит.
в товаре есть демо файл и файл на продажу.
демо - можно скачать всегда.
файл для продажи - только после получения статуса заказа "оплачен".
т.е. по барабану каким образом он (статус заказа) будет получен.
руками менеджером изменен или передан платежной системой ЛЮБОЙ, после успешности платежа.
методы оплаты он-лайн возвращаю ответ об успешности / неуспешности. по нему меняется стстаус заказа автоматически

получить (скачать) файл можно либо кликнув по ссылке в письме заказа (если статус заказа оплачен)
либо зайдя в кабинет свой и скачав из заказа.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

oleg856

  • Новичок
  • 7
  • 0 / 0
от плагина оплаты это не зависит.
в товаре есть демо файл и файл на продажу.
демо - можно скачать всегда.
файл для продажи - только после получения статуса заказа "оплачен".
т.е. по барабану каким образом он (статус заказа) будет получен.
руками менеджером изменен или передан платежной системой ЛЮБОЙ, после успешности платежа.
методы оплаты он-лайн возвращаю ответ об успешности / неуспешности. по нему меняется стстаус заказа автоматически

получить (скачать) файл можно либо кликнув по ссылке в письме заказа (если статус заказа оплачен)
либо зайдя в кабинет свой и скачав из заказа.
Понятно, просто я вчера протестировал, добавил Форму для приема платежей Яндекс Деньги, оплата прошла успешно (отобразилось на яндексе), но нигде не было ссылки на возможность скачать файл. Вот я и подумал, если я поставлю этот плагин, то там и будет отображаться оплачен или не оплачен товар в статусе заказа. А если как вы говорите после получения статуса заказа на моём сайте будет оповещение "оплачен", то автоматически пользователь получит ссылку на файл? Или получается, что Форма для приема платежей от Яндекс Деньги вообще нельзя ей пользоваться если я хочу чтобы товар получали автоматически?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
получается, что Форма для приема платежей от Яндекс Деньги вообще нельзя ей пользоваться если я хочу чтобы товар получали автоматически?

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

nevigen

  • Moderator
  • 10449
  • 863 / 25
  • http://n*****n.com
не имеет значения плагин оплаты. ВООБЩЕ !!

есть понятие статуса заказа и его автоматическая смена.
как только он получает статус оплаченного, можно скачать с сайта из заказа.

плагин Яндекс.Денег (платный) проверяет успешность и меняет статус автоматически.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

oleg856

  • Новичок
  • 7
  • 0 / 0
Понятно, короче только если становитсся Юр. лицом или ИП то можно подключать Яндекс.Кассу к магазину. По-другому до автоматизма через Яндекс мани дойти нельзя?
*

nevigen

  • Moderator
  • 10449
  • 863 / 25
  • http://n*****n.com
Яндекс.Деньги (безюрлица) + идентификация там. + платный плагин = автоматический прием средств.
ограничения см. на сайте яндекса

но здесь не обсуждаются сервисы, способы подключения к ним, тарифы и преимущества.
тут обсуждается плат.сервис в разрезе интеграции в магазин.
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

oleg856

  • Новичок
  • 7
  • 0 / 0
Яндекс.Деньги (безюрлица) + идентификация там. + платный плагин = автоматический прием средств.
ограничения см. на сайте яндекса

но здесь не обсуждаются сервисы, способы подключения к ним, тарифы и преимущества.
тут обсуждается плат.сервис в разрезе интеграции в магазин.
А возможно ли обсудить это и в какой ветке форума лучше написать?
*

nevigen

  • Moderator
  • 10449
  • 863 / 25
  • http://n*****n.com
что это ?
как подключить/создать учетку в Яндекс.деньгах ? :)
не уверен что это вообще касается Joomla :)

в сети полно информации об этом.
как установить и подключить плагин, можно найти у продавца на сайте.

не понимаю что тут на этом форуме обсуждать ?
пиарить Яндекс деньги ? :)
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

oleg856

  • Новичок
  • 7
  • 0 / 0
что это ?
как подключить/создать учетку в Яндекс.деньгах ? :)
не уверен что это вообще касается Joomla :)

в сети полно информации об этом.
как установить и подключить плагин, можно найти у продавца на сайте.

не понимаю что тут на этом форуме обсуждать ?
пиарить Яндекс деньги ? :)


:D Нет. Просто я больше не знаю где все это спросить. Там как я понял чтобы продавать товары необходимо пройти идентификацию на "Профессиональный счет" ? А затем приобрести ваш плагин и тогда можно рассчитывать на процесс автоматизации получения эл. товара клиентам? Или я опять Неправильно понял?
*

nevigen

  • Moderator
  • 10449
  • 863 / 25
  • http://n*****n.com
профессиональный не обязательно.
просто надо пройти идентификацию.
профессиональный это если вы так хотите.
достаточно именного.

для кассы юрлицо есно и все вытекающие.

учетка яд+ идентификация
плагин оплаты
создание приложения в ЯД
настройка плагина
прием оплат в автоматическом режиме
« Последнее редактирование: 07.04.2015, 13:55:52 от nevigen »
Профессиональные / Бесплатные решения для JoomShopping
Не лечи бесплатно, ибо тот, кто лечится бесплатно, рано или поздно перестает ценить свое здоровье,
а тот, кто лечит бесплатно, рано или поздно перестает ценить результаты своего труда/ (с) Гиппократ?
Не ищите ответов, ищите решение !
*

Beer

  • Завсегдатай
  • 1103
  • 43 / 1
  • БИРУ - БИР!
Т.е. имея ЯД счет (с пройденной идентификацией) и установив https://nevigen.com/ru/payment/yandex-money-payment.html можно не только получать оплату, но и менять автоматом статус заказа на Оплачено (либо какой другой) так?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
да. на nevigen.com так и происходит - цифровой товар, автоматическая смена статуса, потом возможность скачать расширение.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Beer

  • Завсегдатай
  • 1103
  • 43 / 1
  • БИРУ - БИР!
Сколько раз можно скачать?
Или сколько по времени?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
вы все мешаете в одну кучу. это вопросы не к плагину оплаты. плагин оплаты - это оплата и оповещение об этом магазина. а все остальное -  это не сюда. сколько раз можно скачать - это настройка в ЖШ есть. по времени - в базе нет такого ограничения, но можно сделать плагином.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Украинские плагины оплаты для версии 5, 0?

Автор Alex_gs

Ответов: 3
Просмотров: 2717
Последний ответ 12.01.2023, 01:16:57
от Alex_gs
Privat24 - плагин оплаты (приват24)

Автор vasya321

Ответов: 84
Просмотров: 24290
Последний ответ 05.07.2022, 10:39:36
от nevigen
LiqPay - плагин оплаты

Автор 1g0r

Ответов: 160
Просмотров: 42583
Последний ответ 31.12.2021, 23:17:26
от Biss
Плагин оплаты AlfaBank Казахстана

Автор Kokshetau

Ответов: 4
Просмотров: 2894
Последний ответ 13.01.2021, 18:40:11
от Kokshetau
Плагин оплаты кредитной картой [Альфа-Банк]

Автор v42bis

Ответов: 3
Просмотров: 4661
Последний ответ 30.11.2020, 22:00:28
от nevigen