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

freedom

  • Захожу иногда
  • 318
  • 54 / 6
Ошибка 500, это ошибка со стороны сервера, чаще всего не хватает времени на исполнение скрипта, выхода два: изменить настроку времени исполнения скриптов в php.ini или попробовать установить из директории сервера
Время улучшения ситуации обратно пропорционально времени ее ухудшения. (например: Соседняя очередь всегда движется быстрее )
*

npoxop

  • Осваиваюсь на форуме
  • 19
  • 1 / 0
а как зделать так чтобы коменты гостям были видны ??? что то найти немогу где это меняется
*

npoxop

  • Осваиваюсь на форуме
  • 19
  • 1 / 0
ктонибудь мне ответит?
*

elly

  • Новичок
  • 7
  • 0 / 0
при добавлении комментария он сразу показывается вот так (см. картинку)
при обновлении страницы этот текст оказывается вполне читабельным.. как побороть кракозябриков?


[вложение удалено Администратором]
*

freedom

  • Захожу иногда
  • 318
  • 54 / 6
при добавлении комментария он сразу показывается вот так (см. картинку)
при обновлении страницы этот текст оказывается вполне читабельным.. как побороть кракозябриков?

Какая версия php ? какая кодировка БД? включена ли библиотека iconv на хостинге ?
Время улучшения ситуации обратно пропорционально времени ее ухудшения. (например: Соседняя очередь всегда движется быстрее )
*

elly

  • Новичок
  • 7
  • 0 / 0
я прошу прощения, но про iconv не знаю, как узнать (такой вот каламбур ^-^)

Версия PHP:       4.4.8
MySQL-кодировка:  Windows Cyrillic (cp1251)
Сопоставление соединения с MySQL: utf_unicode_ci

упд: в шаблоне akostyle текст то переносится на другую строку по 2 слова, то остается строками нормальной длины.. ни о каком форматировании речи нет(
freedom, если вам интересно, я могу прислать в личку ссылку.
« Последнее редактирование: 11.07.2008, 12:21:06 от elly »
*

freedom

  • Захожу иногда
  • 318
  • 54 / 6
В общих настройках компонента какая кодировка стоит? есть ли надпись "Библиотека iconv доступна на вашем сервере" ?
Время улучшения ситуации обратно пропорционально времени ее ухудшения. (например: Соседняя очередь всегда движется быстрее )
*

elly

  • Новичок
  • 7
  • 0 / 0
windows-1251

да, "Php iconv библиотека доступна на вашем сервере"

упд: если отключить аякс, то проблем с кодировкой вновь добавленного сообщения нет.. проблемы с форматированием текста остаются >:( ну и, есс-но, пропадают разные приятности)
« Последнее редактирование: 11.07.2008, 13:42:22 от elly »
*

freedom

  • Захожу иногда
  • 318
  • 54 / 6
в той строчке где написано "Php iconv библиотека доступна на вашем сервере" есть окошечко где прописана кодировка, попробуйте вариации windows-1251 или UTF-8
Время улучшения ситуации обратно пропорционально времени ее ухудшения. (например: Соседняя очередь всегда движется быстрее )
*

elly

  • Новичок
  • 7
  • 0 / 0
это первое, что я сделала) не помогает..

а отсутствие выравнивания текста как можно побороть?
« Последнее редактирование: 11.07.2008, 20:57:36 от elly »
*

freedom

  • Захожу иногда
  • 318
  • 54 / 6
Ссылку в личку
Время улучшения ситуации обратно пропорционально времени ее ухудшения. (например: Соседняя очередь всегда движется быстрее )
*

kikimora17

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
  • Реклама контекстная, таргетированная и SEO
Компонент комментариев joomlacomment 3.25 RUS
« Ответ #71 : 13.07.2008, 08:17:16 »
модуль последних комментариев стопорит Joomla (дальше модуля загрузка не идёт)
Ошибка в 99 строке файла mod_comments.php = что там менять?

Сам компонент 3,25 встал отлично (перед этим я снёс 2,2 версию), а комменты сохранились чудом!
*

elly

  • Новичок
  • 7
  • 0 / 0
это первое, что я сделала) не помогает..
а отсутствие выравнивания текста как можно побороть?
ура! все заработало, спасибо freedom'y)
*

freedom

  • Захожу иногда
  • 318
  • 54 / 6
Вышел очередной баг фикс, ссылка на скачивание в первом посте, а также utf сборка
Время улучшения ситуации обратно пропорционально времени ее ухудшения. (например: Соседняя очередь всегда движется быстрее )
*

art

  • Осваиваюсь на форуме
  • 14
  • 1 / 2
компонент супер ! фридом молодца ... Переделал css под шаблон сайта , удалил выбор цвета и размера шрифта, осталось одно - удалить поле "Тема" в добавлении комментариев! Не могу найти нужную строчку ...  Может кто знает где искать? Версия -  Joomlacomment 3.26 RUS, скачано с http://freedom-ru.net/
*

elly

  • Новичок
  • 7
  • 0 / 0
а как обновлять с 3.25рус?
*

freedom

  • Захожу иногда
  • 318
  • 54 / 6
а как обновлять с 3.25рус?
На всякий случай сделать бэкап БД
Затем удалить компонент joomlacomment 3.25 RUS и установить joomlacomment 3.26 RUS
Комментарии должны сохранится
Время улучшения ситуации обратно пропорционально времени ее ухудшения. (например: Соседняя очередь всегда движется быстрее )

У кого не работает (проблемы с кодировкой) на Joostina делайте так. Языковые файлы сохраняйте в utf-8 а в настройках пишите windows-1251
*

hunty

  • Новичок
  • 4
  • 0 / 0
CAPTCHA сломалась через пару дней.  >:(. На картинке только полосатый фон но не сам текст. Стандартная переустановка не помогла. Что здесь можно сделать?
*

MoDee

  • Новичок
  • 2
  • 0 / 0
Прикрепите, пожалуйста компонент к сайту, а то выдает ошибку 404 - Компонент не найден
*

freedom

  • Захожу иногда
  • 318
  • 54 / 6
ссылки обновлены
Время улучшения ситуации обратно пропорционально времени ее ухудшения. (например: Соседняя очередь всегда движется быстрее )
*

eddy333

  • Новичок
  • 8
  • 1 / 0
У меня такая проблема с !JoomlaComment 3.26 на joomla!1.5.6. Все оставленные комментарии должны находиться прямо друг под другом, в столбец. Но бывает так, что какой-нибудь один комментарий сместится вправо на полсантиметра, что-то типа отступа. Из-за этого не видно правый край комментария. Помогите плиз, в чем проблема? Схема ниже. Спасибо
[       ]
[       ]
[       ]
 [       ]
[       ]
[       ]
[       ]
*

freedom

  • Захожу иногда
  • 318
  • 54 / 6
Это иерархия ответов показана
[ коммент ]
    [ ответ ]
     [ ответ ]
      [ ответ ]
Ответы и размер отступа можно настроить в конфигурации комментариев
Время улучшения ситуации обратно пропорционально времени ее ухудшения. (например: Соседняя очередь всегда движется быстрее )
*

Olinda

  • Захожу иногда
  • 71
  • 1 / 0
Установила компонент, в его настройках он включен, на сайте уже есть материалы, коментарии к ним так и не появились...Что нужно еще сделать?

Есть проблема - не знаю что делать - кодировка утф-8, комментарии, написанные на русском отображаються знаками вопросов... Пробовал в админке поменять на виндовс-1251 - та же самая фигня :(
Php iconv библиотека доступна на вашем сервере.

И еще! На почту приходит уведомление о комментарии - в нем нормально все отображается...

Подскажите, пожалуйста, что делать?
-----------------------------------------------------------------------------------------------------------------
 ^-^
В базе кодировка стояла латин1_швед, изменил на утф8 и стало норм :)
« Последнее редактирование: 17.10.2008, 20:05:16 от Rodimus »
*

eddy333

  • Новичок
  • 8
  • 1 / 0
Спасибо, попробую!
*

freedom

  • Захожу иногда
  • 318
  • 54 / 6
Установила компонент, в его настройках он включен, на сайте уже есть материалы, коментарии к ним так и не появились...Что нужно еще сделать?
А мамбот комментариев опубликован?
Время улучшения ситуации обратно пропорционально времени ее ухудшения. (например: Соседняя очередь всегда движется быстрее )
*

Olinda

  • Захожу иногда
  • 71
  • 1 / 0
freedom, опубликованы таки мамботы компонента - Content - !JoomlaComment , System - !JoomlaComment CleanCache, может еще какой-то мамбот к этому компоненту должен быть? Почитайте пожалуйста мои сегодняшние мытарства по этому поводу здесь:
http://joomlaforum.ru/index.php/topic,44660.msg261751.html#msg261751
другие компоненты коментариев работают, этот нет. Может вы сможите помочь, хочется таки его очень  поставить...
*

7RusWolf

  • Захожу иногда
  • 64
  • 5 / 0
классный компонент, спасибо *DRINK*
есть 2 вопроса: выше читал, что есть расширение как вывод последних комментариев, подойдет ли оно к версии 3.26?

и как удалить с превью новости "Оставить комментарий" ^-^
*

7RusWolf

  • Захожу иногда
  • 64
  • 5 / 0
классный компонент, спасибо *DRINK*
есть 2 вопроса: выше читал, что есть расширение как вывод последних комментариев, подойдет ли оно к версии 3.26?

и как удалить с превью новости "Оставить комментарий" ^-^

неужели никому не требовалось? и никто не делал?!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

NorrCompetition - компонент конкурсов с голосованием за фотографии и видео

Автор Sulpher

Ответов: 115
Просмотров: 26681
Последний ответ 22.03.2023, 17:07:57
от Sulpher
Компонент комментариев Komento

Автор bunneh

Ответов: 86
Просмотров: 41664
Последний ответ 24.12.2020, 16:36:07
от AlexB
EasySocial компонент для создания полноценной соцсети для Joomla

Автор siao

Ответов: 58
Просмотров: 19760
Последний ответ 03.12.2020, 17:53:40
от po-fakel
Akeeba Engage - бесплатный компонент комментариев (ru-RU)

Автор Kostelano

Ответов: 9
Просмотров: 5384
Последний ответ 31.10.2020, 12:56:36
от AlexB
Место вывода комментариев Disquss в шаблоне

Автор Kostelano

Ответов: 0
Просмотров: 3474
Последний ответ 01.05.2019, 20:10:49
от Kostelano