Новости 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 Ответов
  • 6893 Просмотров
*

netparty

  • Осваиваюсь на форуме
  • 11
  • 2 / 0
Перевод TinyMCE в Joomla 2.5
« : 14.02.2012, 18:46:52 »
Приветствую всех.

Скачал  Joomla 2.5.1 и локализацию к ней с сайта http://joomlaportal.ru/
Установил, но так и не понял как приучить к русскому языку TinyMCE.

Скачал пакет русификации с сайта разработчика, но куда их пихать так и не понял (3 папки: langs, plugins, themes, в них еще куча папок и файлов...)

Как его всетаки обучить?
*

netparty

  • Осваиваюсь на форуме
  • 11
  • 2 / 0
Re: Перевод TinyMCE в Joomla 2.5
« Ответ #1 : 19.02.2012, 23:17:52 »
Спасибо всем за ответ....

Собрал нечто из подручных средств, у меня установилось и заработало. Положу пока сюда, вдруг пригодится:
http://netparty.ru/files/cms/joomla/plagins/tinymce_lang_pack_ru_for_j2_5.zip
*

Turos

  • Новичок
  • 2
  • 0 / 0
Re: Перевод TinyMCE в Joomla 2.5
« Ответ #2 : 23.02.2012, 16:20:33 »
Там надо скачать языковой файл и в настройке MCE включить русский язык

-----------------------
цирконий металл
« Последнее редактирование: 06.01.2020, 21:31:43 от Turos »
*

netparty

  • Осваиваюсь на форуме
  • 11
  • 2 / 0
Re: Перевод TinyMCE в Joomla 2.5
« Ответ #3 : 24.02.2012, 12:30:45 »
Пробовал так, скачал файлы локализации с офсайта, но не понял куда пихать файлы (их там аж 3 папки и в них файлы русского с одинаковыми названиями)....
нашел не особо древний русификатор , впихнул в него новые языковые файлы, установил - заработало.
*

Leva27

  • Осваиваюсь на форуме
  • 41
  • 3 / 0
  • Дальвебстудия
Re: Перевод TinyMCE в Joomla 2.5
« Ответ #4 : 22.03.2012, 06:30:41 »
Такая же хрень, пытался распаковать архив отсюда http://www.tinymce.com/i18n/index.php?ctrl=lang&act=download&pr_id=1
в папку /plugins/editors/tinymce и пощелкать "автоматический выбор языка" и вписать код языка "ru" - кнопки панели тупо пропадают
Joomla 2.5.3, TinyMCE 3.4.7
Как установить русификатор?
*

netparty

  • Осваиваюсь на форуме
  • 11
  • 2 / 0
Re: Перевод TinyMCE в Joomla 2.5
« Ответ #5 : 22.03.2012, 10:17:03 »
Leva27, попробуй вот это поставить, у меня работает: http://netparty.ru/files/cms/joomla/plagins/tinymce_lang_pack_ru_for_j2_5.zip
*

Leva27

  • Осваиваюсь на форуме
  • 41
  • 3 / 0
  • Дальвебстудия
Re: Перевод TinyMCE в Joomla 2.5
« Ответ #6 : 22.03.2012, 10:53:42 »
Leva27, попробуй вот это поставить, у меня работает: http://netparty.ru/files/cms/joomla/plagins/tinymce_lang_pack_ru_for_j2_5.zip
Спасибо, подписи к кнопкам русские, менюшки русские, пока все пучком. Как тут плюсануть? :)
*

b.carotin

  • Осваиваюсь на форуме
  • 18
  • 2 / 0
Re: Перевод TinyMCE в Joomla 2.5
« Ответ #7 : 29.03.2012, 03:30:43 »
Спасибо, добрый человек
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

TinyMCE режет ссылку на FB

Автор Alex_gs

Ответов: 0
Просмотров: 2662
Последний ответ 27.09.2023, 10:36:53
от Alex_gs
В редакторе TinyMCE в списке меток (тегов) выдает только 30 меток

Автор illimited

Ответов: 3
Просмотров: 2738
Последний ответ 07.03.2023, 19:33:03
от illimited
Фильтровать текст при вставке из Word в TinyMCE

Автор goga_pgasovav

Ответов: 2
Просмотров: 2616
Последний ответ 21.02.2023, 17:39:32
от goga_pgasovav
TinyMCE в 4-ке, нужна помощь

Автор Шмайсер

Ответов: 0
Просмотров: 2615
Последний ответ 22.07.2022, 14:20:34
от Шмайсер
Не работает TinyMCE

Автор terr

Ответов: 11
Просмотров: 10334
Последний ответ 22.06.2022, 12:01:51
от Holden73