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

Димитрий

  • Захожу иногда
  • 65
  • 0 / 0
  • Добра и счастья!
http://vamshop.ru/support/modules/smf/index.php?board=16.0

а если доработать вамшоп для интеграции в Joomla? с шаблонами там все очень просто обстоит. и возможностей гораздо больше.
так что, предлагаю заняться желающим- эффект превысит все ваши ожидания..я уже давно копаюсь с вамшопом, и могу сказать лучше пока магазина не видел. на одну CMS его уже почти что натянули..
и вообще..можете обижаться, банить и стирать.. но часто не нужно пинать дохлую лошадь, лучше на быстрого рысака пересесть))
если будут вопросы- пишите- на все отвечу.
« Последнее редактирование: 07.01.2010, 11:18:02 от beagler »
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Партнерская программа для него есть? В описании не нашел, только скидки-купоны
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Димитрий

  • Захожу иногда
  • 65
  • 0 / 0
  • Добра и счастья!
Есть. очень неплохая. я себе поставил. просто она ставится как дополнительный модуль. да и модулей там порядочно разных
*

FxPunter

  • Давно я тут
  • 691
  • 112 / 7
  • Э-эх!
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Димитрий

  • Захожу иногда
  • 65
  • 0 / 0
  • Добра и счастья!
ага плюс год поддержки. почти что бесплатно.  я бы даже сказал- это более бесплатно чем виртумарт- где запарок по времени больше чем на эти еноты
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Димитрий - так можешь дать ссылки на сайты на этом движке? Я что то в сети не очень нашел
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

Димитрий

  • Захожу иногда
  • 65
  • 0 / 0
  • Добра и счастья!
вот например мои магазины- argomoscow.ru , тут уже стоит партнерская программа, плюс кое-какие мои доработки..
вот еще с другими ссылками ( чпу )- тоже доработано apteka-argo.ru
вот с приятным дизайном argomarket.ru
*

FxPunter

  • Давно я тут
  • 691
  • 112 / 7
  • Э-эх!
а можно как -то демо режим посмотреть?
*

Димитрий

  • Захожу иногда
  • 65
  • 0 / 0
  • Добра и счастья!
на сайте vamshop.ru можно скачать демоверсию, она полностью рабочая- только почту не отправляет.
ну и у меня немножко доработанная.. вообще на сайте vamshop.ru в разделе файлы- видно какие модули имеются к ней.. в форуме- тоже можно много почитать и понять.
*

Andros

  • Захожу иногда
  • 134
  • 9 / 1
а можно как -то демо режим посмотреть?
Да что там смотреть: оскоммерс перелопаченный... Но за деньги! :)
*

Димитрий

  • Захожу иногда
  • 65
  • 0 / 0
  • Добра и счастья!
во-первых не ос-коммерс, а хт-коммерс.. две большие разницы. ( удобная система шаблонов)
во-вторых- постоянное развитие и модернизация..
в-третьих возможностей побольше чем у оскоммерса в нормальном виде.., много есть очень и очень полезных фич.
по функционалу почти как Joomla, с учетом лишь того что это все же интернет-магазин..
а так есть и функции CMS ( статьи, информационные страницы, управление титлами, урлами...)
*

4.n

  • Захожу иногда
  • 127
  • 22 / 0
Re: Интеграция VamShop и Joomla/Joostina.
« Ответ #12 : 09.09.2010, 15:43:14 »
Можно попробовать поставить SMF и бридж  на Joomla и VamShop
по идее, должно прокатить при правильной настройке...
*

Димитрий

  • Захожу иногда
  • 65
  • 0 / 0
  • Добра и счастья!
Re: Интеграция VamShop и Joomla/Joostina.
« Ответ #13 : 09.09.2010, 16:40:14 »
да нет- это полумеры..нужное кое-что более принципиальное)) скажем вывод блоков магазина в Joostina.. или Joomla..ну вы понимаете)
*

4.n

  • Захожу иногда
  • 127
  • 22 / 0
Re: Интеграция VamShop и Joomla/Joostina.
« Ответ #14 : 09.09.2010, 17:44:09 »
Ну основная задача это синхронизация пользователей. Я так понимаю, единственное условие это общая база для "салата".
Через SMF получаем синхронизацию юзеров, а остальное дописываем по вкусу =)
API вроде где-то встречал, но в PHP не силен...
*

4.n

  • Захожу иногда
  • 127
  • 22 / 0
Re: Интеграция VamShop и Joomla/Joostina.
« Ответ #15 : 10.09.2010, 16:51:27 »
В принципе, вывод товаров в модули, можно организовать и через RSS или csv, XML...
*

Димитрий

  • Захожу иногда
  • 65
  • 0 / 0
  • Добра и счастья!
Re: Интеграция VamShop и Joomla/Joostina.
« Ответ #16 : 16.10.2010, 07:01:36 »
можно но вот нормально не получалось еще ни у кого)) плюс лишняя нагрузка, куда ж приятней когда общая база и общие ссылки
*

WildAlex

  • Новичок
  • 9
  • 0 / 0
Re: Интеграция VamShop и Joomla/Joostina.
« Ответ #17 : 31.10.2010, 06:07:55 »
Дмитрий, не подскажете как сделать, чтобы при импорте базы товаров, загружались и дополнительно созданные атрибуты? Ну вот, к примеру, для каталога книжек. Я ведь могу создать атрибут "автор", "издательство" и др. Я базу товаров создал, а вот импортировать её в таком виде не могу. Приходится сведения об авторе, издательстве вносить в стандартное поле(вроди бы "свойства").
*

Димитрий

  • Захожу иногда
  • 65
  • 0 / 0
  • Добра и счастья!
Re: Интеграция VamShop и Joomla/Joostina.
« Ответ #18 : 31.10.2010, 09:34:17 »
а какая версия вамшопа? возможно в новой это исправлено, надо спрашивать на форуме поддержки, там быстрей ответят, я с доп.атрибутами не сталкивался.
кстати скоро уже очень будет готова система вамшоп+джустина, верней автор мне уже показывал, сейчас инсталлятор готовит.
*

WildAlex

  • Новичок
  • 9
  • 0 / 0
Re: Интеграция VamShop и Joomla/Joostina.
« Ответ #19 : 31.10.2010, 12:42:21 »
Проверял на 1.5.8 и 1.5.9. Вот сейчас посмотрел - оказывается вышла версия 1.6.0. Попробую здесь... А на форуме мне ответили лишь то, что стандартными средствами такое сделать нельзя.
*

Димитрий

  • Захожу иногда
  • 65
  • 0 / 0
  • Добра и счастья!
Re: Интеграция VamShop и Joomla/Joostina.
« Ответ #20 : 31.10.2010, 12:51:11 »
ну тогда обращаться к программеру- знаю одного хорошего)) за деньги в вамшопе может сделать всё..
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Импорт YML в Joomla 4

Автор Вадим НН

Ответов: 6
Просмотров: 3531
Последний ответ 11.07.2022, 11:35:15
от Вадим НН
Систему биллинга для Joomla

Автор timofe

Ответов: 0
Просмотров: 3385
Последний ответ 23.03.2021, 14:00:52
от timofe
Магазин на чистой Joomla, можно ли и как?

Автор x1

Ответов: 6
Просмотров: 3940
Последний ответ 19.01.2021, 18:45:21
от v42bis
общая инфа по магазам (joomla VirtueMart. presta shop, open cart)

Автор dmitriy010101

Ответов: 3
Просмотров: 5118
Последний ответ 30.11.2020, 16:26:51
от x1
Com-Property v5 - Компонент недвижимости для Joomla 2.5

Автор alex_a_k

Ответов: 991
Просмотров: 155673
Последний ответ 21.11.2019, 22:07:12
от optimist