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

MiksRUS

  • Захожу иногда
  • 58
  • 0 / 0
Добрый день!

Есть сайт sportfood59.ru, долгое время не обновлялся и не менялся, сейчас вылез ряд ошибок, которые нужно исправить и доработать некоторые моменты. Важно не сбить поисковые ссылки.

1. Обновить JoomShopping до актуальной версии.
2. Восстановить работоспособность (не добавляется новый товар, не ставятся фото)
3. Поставить капчу на регистрацию, отзывы и авторизацию.
4. Организовать обмен данными с 1с розница (товар, кол-во, цены, заказы, клиенты)
5. Настроить онлайн оплату заказов.
6. Организовать бонусную программу на сайте, как она реализована в 1с розница. (у покупателей бонусные карты на которые начисляется 10% от стоимости покупки, и в дальнейшем данными бонусами можно расплачиваться за товар). Организовать обмен данными между сайтом и 1с.

Если реализовать данные хотелки на текущем движке не возможно, готов рассмотреть переезд на другой.
Скидывайте в личку стоимость и сроки выполнения работ.

С уважением, Сергей   
*

kit2m2

  • Живу я здесь
  • 3360
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Доработать сайт Joomla+joomshopping
« Ответ #1 : 08.10.2018, 18:19:45 »
Это Вы предлагайте бюджет, а чтобы оценить перечисленные задачи, сначала нужно на внутренности пациента посмотреть...

А то начнешь обновлять и окажется что вносились ранее в правки в ядро и все полетит.

Цитировать
1. Обновить JoomShopping до актуальной версии.
2. Восстановить работоспособность (не добавляется новый товар, не ставятся фото)
3. Поставить капчу на регистрацию, отзывы и авторизацию.
4. Организовать обмен данными с 1с розница (товар, кол-во, цены, заказы, клиенты)
5. Настроить онлайн оплату заказов.
6. Организовать бонусную программу на сайте, как она реализована в 1с розница. (у покупателей бонусные карты на которые начисляется 10% от стоимости покупки, и в дальнейшем данными бонусами можно расплачиваться за товар). Организовать обмен данными между сайтом и 1с.
1п. - Без вопросов если ядро не правилось
2п. - Тут куча вариантов...
3п. - поставить можно
4п. - Выгрузка через файл или полная синхронизация (туда-обратно)
5п. - Какую онлайн оплату?
6п. - Нужно платное расширение
По 1С нужно сначала вашу конфигурацию смотреть и что у Вас в ней наверчено (тут сумму сразу и не скажешь).

Предлагаю работать по-задачно, стучите в скайп - StudioDK-WEB
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Re: Доработать сайт Joomla+joomshopping
« Ответ #2 : 08.10.2018, 18:26:21 »
1. Обновить JoomShopping до актуальной версии.
Версия ЖШ и Joomla?
*

morph

  • Давно я тут
  • 924
  • 105 / 0
Re: Доработать сайт Joomla+joomshopping
« Ответ #3 : 09.10.2018, 05:13:46 »
от 18 тыр. есть свои синхронизация с 1с и бонусная система
а что там не работает - нужно смотреть, может завирусовано все и проще заново установить и импортировать
с к а йп  matveevea, не быстро, могу начать в выходные
*

MiksRUS

  • Захожу иногда
  • 58
  • 0 / 0
Re: Доработать сайт Joomla+joomshopping
« Ответ #4 : 10.10.2018, 11:54:49 »
Это Вы предлагайте бюджет, а чтобы оценить перечисленные задачи, сначала нужно на внутренности пациента посмотреть...

А то начнешь обновлять и окажется что вносились ранее в правки в ядро и все полетит.
1п. - Без вопросов если ядро не правилось
2п. - Тут куча вариантов...
3п. - поставить можно
4п. - Выгрузка через файл или полная синхронизация (туда-обратно)
5п. - Какую онлайн оплату?
6п. - Нужно платное расширение
По 1С нужно сначала вашу конфигурацию смотреть и что у Вас в ней наверчено (тут сумму сразу и не скажешь).

Предлагаю работать по-задачно, стучите в скайп - StudioDK-WEB

1п. Не помню, но подниму информацию, что делалось.
2п. Какие? задавайте.
4п. Полная
5п. Готов рассмотреть любой вариант, но в идеале, какой нибудь мобильный эквайринг с пробитием чека через онлайн кассу в розничной точке.
1с Розница 8

Напишите, хотя бы приблизительный бюджет, можно по пунктам? А то может, сумма будет не подъемная для меня.
*

MiksRUS

  • Захожу иногда
  • 58
  • 0 / 0
Re: Доработать сайт Joomla+joomshopping
« Ответ #5 : 10.10.2018, 11:55:54 »
Версия ЖШ и Joomla?

Joomla 3.6.5 JoomShopping 4.12.3
*

MiksRUS

  • Захожу иногда
  • 58
  • 0 / 0
Re: Доработать сайт Joomla+joomshopping
« Ответ #6 : 10.10.2018, 11:57:31 »
от 18 тыр. есть свои синхронизация с 1с и бонусная система
а что там не работает - нужно смотреть, может завирусовано все и проще заново установить и импортировать
с к а йп  matveevea, не быстро, могу начать в выходные

Готов выложить резерную копию, чтобы вы сами посмотрели, как лучше сделать.
*

kit2m2

  • Живу я здесь
  • 3360
  • 276 / 0
  • Беру сайты на полное сопровождение
Re: Доработать сайт Joomla+joomshopping
« Ответ #7 : 10.10.2018, 14:47:23 »
1п. Не помню, но подниму информацию, что делалось.
2п. Какие? задавайте.
4п. Полная
5п. Готов рассмотреть любой вариант, но в идеале, какой нибудь мобильный эквайринг с пробитием чека через онлайн кассу в розничной точке.
1с Розница 8

Напишите, хотя бы приблизительный бюджет, можно по пунктам? А то может, сумма будет не подъемная для меня.

1п. - Если все штатно - от 500 руб.
2п. - Тут куча вариантов... Тут нужно разбираться - от 500 руб.
3п. - Платное расширение + (работа - 500 руб.)
4п. - Стоимость будет зависеть от многих факторов, насколько ваша 1С готова к синхронизации (все ли поля присутствуют в 1С и т.д.) - от 5 000 руб.
5п. - Стоимость модуля оплаты (если платный) + настройка и подключение от 500 руб.
6п. - Стоимость платного расширения + (работа  - от 500 руб.)
По 1С
Цитировать
1с Розница 8
Это не пойдет нужна полная информация, то что написано в программе в пункте "О программе"
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Немного доработать мобильное меню

Автор alanbus

Ответов: 2
Просмотров: 8629
Последний ответ 29.08.2025, 12:48:02
от alanbus
Настроить ошибку 404 (Joomla 3.10)

Автор alanbus

Ответов: 9
Просмотров: 1145
Последний ответ 10.04.2025, 07:29:55
от kit2m2
Нужна помощь по Joomla 3.9.2

Автор Екатерина М

Ответов: 1
Просмотров: 815
Последний ответ 05.04.2025, 07:02:49
от kit2m2
Обновить Joomla и PHP

Автор Zlusya

Ответов: 1
Просмотров: 1725
Последний ответ 23.05.2024, 16:57:54
от kit2m2
Нужна помощь по Joomla 3.4.3

Автор Vikvik43

Ответов: 7
Просмотров: 1643
Последний ответ 09.05.2024, 08:38:30
от kit2m2