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

Greycat

  • Захожу иногда
  • 298
  • 64 / 0
ВНИМАНИЕ: Начиная с Joomla! 1.5.12 редактор TinyMCE обновлён и приложенный в этой теме файл для него не подходит. Если вы устанавливаете оригинальный англоязычный дистрибутив, то файлы локализации следует загружать с официального сайта TinyMCE. Их необходимо залить в каталог "/plugins/editors/tinymce/jscripts/tiny_mce/" вашей копии Joomla! 1.5.

В русифицированном дистрибутиве Joomla! 1.5.xX Russian они уже предустановлены.


*****************************************

Ниже приведена инструкция по русификации визуального редактора TinyMCE в англоязычном дистрибутиве Joomla! 1.5 версии до 1.5.11 включительно.

Для локализации TinyMCE сделайте следующее:

1. Распакуйте прилагающийся архив "tiny_mce_rus_2008.05.21.zip" в каталог "/plugins/editors/tinymce/jscripts/tiny_mce/" вашей копии Joomla! 1.5 (в этом каталоге уже должны быть подкаталоги "langs", "plugins" и "themes").

2. Зайдите в менеджер плагинов. Откройте параметры плагина "Editor - TinyMCE 2.0" ("Редактор - TinyMCE 2.0"). Найдите параметр "Автоматический выбор языка" и переключите его в положение "Да". Сохраните изменения.

После этого при загрузке визуального редактора все подсказки и надписи в нём должны быть на русском.

В прилагающемся архиве содержатся только файлы с именами "ru.js". Никакие существующие файлы не заменяются.

В данном архиве содержатся файлы из набора, взятого с сайта "http://tinymce.moxiecode.com/language.php". В исходных файлах исправлены найденные ошибки, добавлены недостающие файлы и учтены замечания, высказанные в теме Локализация Joomla 1.5 (обсуждение перевода, инструкция по установке файлов локализации).

P.S. Рекомендую предварительно проверить работу плагина с русифицированными языковыми файлами на локальной копии сайта.

P.P.S. Архив обновлён 21.05.2008.

[вложение удалено Администратором]
« Последнее редактирование: 13.01.2011, 18:13:31 от Greycat »
Я.д.=41001239962471  |  WMR=R271925495206  |  WMZ=Z144922023512
*

Бармен

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
Не помогает
кеш чистил
*

Сержo

  • Захожу иногда
  • 113
  • 4 / 1
Посмотрим шо там и к чему, а то я уже было сам на половину перевёл, добавив не достающее методом тыка в главный русский языковой файл редактора.
*

bobson

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Проще с оф сайта скачать русский язык и поменять папки на сервере, там все норм переведено =) Так исправил у себя с 1.5.15
*

Nazaretto

  • Давно я тут
  • 666
  • 4 / 4
Не устанавливает
Пишет:
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpULS8Vk' to '/home/livefoot/public_html/tmp/tiny_mce_rus_2008.05.21.zip' in /home/livefoot/public_html/libraries/joomla/filesystem/file.php on line 345
*

karabas0k

  • Новичок
  • 8
  • 0 / 1
  • Карабас-Барабас
Вот отличный редактор для Joomla 1.5 сам пользуюсь и проблем с ним небыло

скачать здесь http://php-ru.info/servis/2g4
или http://php-ru.info/servis/2g5
*

terr

  • Давно я тут
  • 824
  • 14 / 6
  • Ученик html-я
в админке русифицировался а во фронте нет почему?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Joomla! 1.5 - Русифицированная версия

Автор Greycat

Ответов: 34
Просмотров: 249259
Последний ответ 12.08.2014, 15:33:31
от dipal
Проблема с кодировкой (скорее всего) Joomla 1.5.9+VirtueMart 1.1.2

Автор fazometr

Ответов: 0
Просмотров: 5920
Последний ответ 03.06.2014, 14:33:49
от fazometr
Ошибка 500 при входе в админку Joomla на локалхосте XMAAP

Автор Ytsan

Ответов: 5
Просмотров: 9795
Последний ответ 17.02.2014, 00:03:09
от Ytsan
Локализация скрипта обработки форм авторизации или регистрации

Автор Tyoma5891

Ответов: 7
Просмотров: 201550
Последний ответ 16.10.2013, 10:05:37
от Tyoma5891
Joomla 1.5 баннеры

Автор Tatyanabob

Ответов: 1
Просмотров: 3659
Последний ответ 13.05.2013, 01:25:06
от fxsugnal