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

woody

  • Новичок
  • 4
  • 0 / 0
Здравствуйте, знающий народ. Подскажите, как привильно настроить JCE редактор (JCE 1.5.7, плагин 1.5.6). Ситуация такая: при вставке текста из Wordа или блокнота редактор выравнивает его по центру. Я редактирую текст, разбиваю его в нужных местах на абзацы, заголовки и т.д., выравниваю по ширине. А если заглянуть в код, то всем тегам абзаца присваивается стиль выравнивания по ширине. И вообще, код получается перегруженным лишними тегами (спаны) и стилями. Как его подкоректировать, поставить курсор по умолчанию в левый край (становится в центр)? Помогите решить !

И еще: когда нужно выделить какое-то слово, часто выделяется целый кусок текста, или даже весь текст. Как убрать?
« Последнее редактирование: 14.03.2010, 21:05:47 от woody »
*

maddestiny

  • Осваиваюсь на форуме
  • 18
  • 2 / 0
Также существует проблема с выделением текста, выделение текста ниже определенного уровня, примерно 350-400px высоты в редакторе, становиться весьма проблемным... (имееться ввиду выделение текста мышью, с клавы такой проблемы нет)
*

YOzhik

  • Захожу иногда
  • 74
  • 1 / 0
  • я ёжик, я упал в реку
Ребят, кто-нибудь решил проблему?
Подскажите, пожалуйста. :D
*

sunnu

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Та же проблема, что и у  maddestiny. Если кто знающий ответит буду очень признательна ::)
*

portal

  • Захожу иногда
  • 50
  • 0 / 0
Проблема актуальна!
*

portal

  • Захожу иногда
  • 50
  • 0 / 0
На страничке administrator/index.php?option=com_jce&type=config


Use Template CSS: поставьте  -нет и все заработает
:-)
*

Evenfrost

  • Осваиваюсь на форуме
  • 15
  • 1 / 0
На страничке administrator/index.php?option=com_jce&type=config


Use Template CSS: поставьте  -нет и все заработает
:-)

Этим вопрос не решается. У меня такие же проблемы с выделением текста мышью и некорректное для WYSIWYG отображение вводимых данных.
*

krodes

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Неужели все мирятся с тем что по умолчанию выравнивание по центру?? Достало уже. Не знаю где настроить чтобы по левому краю было
*

YOzhik

  • Захожу иногда
  • 74
  • 1 / 0
  • я ёжик, я упал в реку
Цитировать
Этим вопрос не решается.
Вопрос решается сменой браузера. Проблемы с выделением,  и прочим форматированием у меня присутствуют лишь в OperaAC/
В лисе проблем нет.
Цитировать
Неужели все мирятся с тем что по умолчанию выравнивание по центру?
В первый раз слышу про такие "умолчания"... Если разве речь о панели инструментов, так это в группе настраивается- параметры редактора.
« Последнее редактирование: 25.11.2010, 05:48:18 от YOzhik »
*

kuman

  • Новичок
  • 5
  • 0 / 0
Нужно в файле template.css шаблона сайта в разделе body изменить text-align с center на left
*

andreysmolin

  • Захожу иногда
  • 274
  • 2 / 2
  • -=полёт нормальный=-
ух
Нужно в файле template.css шаблона сайта в разделе body изменить text-align с center на left
ух ты хитрец. и текст на всем сайте поедет на left
*

Andrey_7

  • Осваиваюсь на форуме
  • 11
  • 2 / 0
решил так,
в папку CSS шаблона добавил файл editor_content.css  (адрес стиля указан в "Custom CSS file", здесь administrator/index.php?option=com_jce&type=config)
в него залил

body{
   margin: 0px 0px 0px 0px;
   background-color: #D9DDE0;
   text-align: left;
   font-family: Arial;
        font-size: 14px;
   color: #666666;
}

(взял из основного файла CSS, тока изменил выравнивание на left)

зы. так же, нужно отключить Use Template CSS
*

SPORTMAN

  • Осваиваюсь на форуме
  • 32
  • 2 / 0
А у меня такая беда, поначалу всё было нормально, но вскоре в один день я заметил что когда я нажимаю под статьёй кнопку "подробнее" открывается та часть стать которая идёт после кнопки "подробнее", а верхняя часть статьи (что над кнопкой) отсутствует. Мой редактор JCE 1.5.7 , а Joomla 1.5.22. ПОМОГИТЕ!
*

dynamit

  • Завсегдатай
  • 1744
  • 265 / 0
  • Winter Is Coming
редактор здесь ни при чем.
в настройках материала → вступительный текст - показать.
так же можете изменить настройку в глобальных свойствах материала.
ТАМ ГДЕ ТЫ НИЧЕГО НЕ МОЖЕШЬ, ТЫ НЕ ДОЛЖЕН НИЧЕГО ХОТЕТЬ
==========================================================
Сайты на Joomla!. Верстка. Консультации.  ||  Яндекс уже не ищет, он уже продает (с)  ||    Создание шаблона для Joomla 2.5
*

SPORTMAN

  • Осваиваюсь на форуме
  • 32
  • 2 / 0
редактор здесь ни при чем.
в настройках материала → вступительный текст - показать.
так же можете изменить настройку в глобальных свойствах материала.
Вот я блин идио..... Вроде разбираюсь в кодах HTML,PHP,CSS,Java Scrip (чуть-чуть), а на такой ерунде запаролся. Огромное тебе спасибо. А мне стыдоба!
*

Sauron_zombie

  • Осваиваюсь на форуме
  • 14
  • 1 / 1
Andrey_7

Спасибо! Это работает.
*

eman

  • Осваиваюсь на форуме
  • 11
  • 0 / 0


зы. так же, нужно отключить Use Template CSS

подскажите пожалуйста где это отключить?
*

dynamit

  • Завсегдатай
  • 1744
  • 265 / 0
  • Winter Is Coming
Компоненты - JCE - Конфигурация - раздел Форматирование
ТАМ ГДЕ ТЫ НИЧЕГО НЕ МОЖЕШЬ, ТЫ НЕ ДОЛЖЕН НИЧЕГО ХОТЕТЬ
==========================================================
Сайты на Joomla!. Верстка. Консультации.  ||  Яндекс уже не ищет, он уже продает (с)  ||    Создание шаблона для Joomla 2.5
*

Jons$

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
А у меня чуть не так. Все добавил все работает только при просмотре статьи на сайте она сама выделена белым цветом что это и как его избавится??
*

djavded

  • Осваиваюсь на форуме
  • 25
  • 0 / 0
Проблема с выделением части материала решается, нужно растянуть окно редактора по высоте большей, чем сама статья.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Редактор JCE

Автор saks1959

Ответов: 1
Просмотров: 2215
Последний ответ 24.09.2023, 11:28:34
от saks1959
Как русифицировать редактор JCE 2.9.19?

Автор Elevyr

Ответов: 1
Просмотров: 3190
Последний ответ 28.01.2022, 09:34:09
от Elevyr
Редактор JCE обрезает нужный мне код

Автор Romanych

Ответов: 3
Просмотров: 3232
Последний ответ 03.04.2021, 11:44:38
от IToro82
JCE редактор, сохранить перенос строк, как?

Автор x1

Ответов: 0
Просмотров: 2879
Последний ответ 08.10.2020, 14:21:48
от x1
Редактор JCE перенос строк

Автор baren

Ответов: 0
Просмотров: 1144
Последний ответ 28.01.2020, 12:47:37
от baren