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

ccmail

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
хорошо ли он дружит с lJoomla 3.3.6?
*

quazy

  • Захожу иногда
  • 68
  • 0 / 0
здравствуйте
компонент неплохой
есть один вопрос: публикую вопрос, на который еще нет ответа, что бы юзер видел, что его вопрос принят и в обработке, при этом на фронте появляется вопрос, но и появляется строки ответил тот-то дата такая-то и поле опроса ниже, а так же на емайл автора отправляется уведомление, что ответ опубликован
как бэ эти строки еще рано юзеру видеть, должен быть только вопрос и автор вопроса с датой, и емайл с уведомлением рано отправлять
для чего тогда статусы "отвечено" и "ожидает"
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Возникло ещё парочка вопросов.
1. Почему у пользователя, который ответил на вопрос, отображается не имя, а логин, хотя в настройках указано отображать имя? Скриншот: http://clip2net.com/s/39H5ezr
2. Почему в тексте ответа на вопрос не отображаются ссылки? Администратор ответил на вопрос пользователя, затем в админке вручную отредактировал ответ, добавив к некоторым словам ссылки на материалы, но эти ссылки не отображаюся, а выглядят как обычный текст.

Joomla 3.3.6 SM FAQ 1.7.3.2
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Уважаемый SmokerMan!
Я конечно понимаю, что были праздники и т.д. Но уже вроде как 12 января. Я был бы признателен, если бы вы ответили на моё предыдущее сообщение.
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Уважаемый SmokerMan!
Я конечно понимаю, что были праздники и т.д. Но уже вроде как 12 января. Я был бы признателен, если бы вы ответили на моё предыдущее сообщение.
Последний релиз версии компонента был где-то пол года или больше назад.
Баги (ошибки) естественно присутствуют и я об этом знаю.
В связи с этим возможна некоторая неправильная работа  данного расширения на различных версиях Joomla

В ближайшее время я планирую сделать полный рефакторинг кода и исправить все ошибки.
Новая версия появиться, думаю, где-то в конце этого - начале следующего месяца.

Спасибо за понимание.
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Последний релиз версии компонента был где-то пол года или больше назад.
Баги (ошибки) естественно присутствуют и я об этом знаю.
В связи с этим возможна некоторая неправильная работа  данного расширения на различных версиях Joomla

В ближайшее время я планирую сделать полный рефакторинг кода и исправить все ошибки.
Новая версия появиться, думаю, где-то в конце этого - начале следующего месяца.

Спасибо за понимание.

Спасибо, будем ждать.
*

Mitriy-Bug

  • Захожу иногда
  • 90
  • 1 / 0
  • Верстка сайтов на Joomla
Хотелось бы новую версию побыстрее увидеть.
*

Mitriy-Bug

  • Захожу иногда
  • 90
  • 1 / 0
  • Верстка сайтов на Joomla
Хотелось бы новую версию побыстрее увидеть.
Огромная просьба добавить возможность добавления новых полей в форму добавления вопроса, например, телефон, город. Сам добавил вроде как, но пришлось перерыть весь компонент.
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
Есть маленькая ошибочка в файле локализации, слитно НЕВЕРНЫЙ:

Код
COM_SMFAQ_NOT_PERMITTED="Неверный уровень доступа!"
*

vvz

  • Осваиваюсь на форуме
  • 44
  • 0 / 0
Привет!
Вопрос разработчику: будет ли UPD: скрипт для переноса данных из версии для j2.5 в новую версию -3.х?
и, собственно, известна ли дата выхода новой версии на j3.x?

Последний релиз версии компонента был где-то пол года или больше назад.
Баги (ошибки) естественно присутствуют и я об этом знаю.
В связи с этим возможна некоторая неправильная работа  данного расширения на различных версиях Joomla

В ближайшее время я планирую сделать полный рефакторинг кода и исправить все ошибки.
Новая версия появиться, думаю, где-то в конце этого - начале следующего месяца.

Спасибо за понимание.
*

evsmorodin

  • Новичок
  • 1
  • 0 / 0
То ли лыжи не едут...

В общем проблема с компонентом следующая:

Ставится на Joomla 2.5.28
Пишет сообщение об успешной установке
При входе в сам компонент в админке (хоть в категории, хоть в вопросы) открывается пустая белая страница
При этом в error логах нет ничего...

Что может быть за мистика такая?
*

Vitaly_Terentyev

  • Новичок
  • 2
  • 0 / 0
Добрый день. Не могу никак понять в чем проблема. У меня стоит Joomla! 3.4.0 Stable и модуль smfaq 1.7.3.2. Тестирую работу модулей сначала на Denwer. При попытке написать вопрос через форму на сайте, вылезает значек отправки и крутиться бесконечно, а комментарий и вовсе не реагирует на нажатие отправить. В чем может быть проблема? Боюсь пока ставить этот модуль на основной сайт.
P.S. Если полностью не заполнять поля в форме отправки вопроса и нажать "отправить", то происходит тоже самое - "Бесконечно крутиться значек отправки", хотя по идее должны быть ошибки ибо основные поля не заполнены. Может проблема Denwer (OpenServer) или я что-то незнаю?
Прошу помощи в этой проблеме, необходимо создать удобный FAQ, а по функционалу этот модуль подходит более чем.
*

shiftDELET

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
при попытке добавит вопрос появляться ошибка

"Время жизни сессии истекло"

J2.5 | SM FAQ1.6
до этого 2 года все работало отлично. обновлений никаких не было!
*

installl

  • Новичок
  • 2
  • 0 / 0
Joomla 3.4.1 -  перестали добавляться вопросы с фронт-энда.
*

Omni

  • Новичок
  • 1
  • 0 / 0
Последний релиз версии компонента был где-то пол года или больше назад.
Баги (ошибки) естественно присутствуют и я об этом знаю.
В связи с этим возможна некоторая неправильная работа  данного расширения на различных версиях Joomla

В ближайшее время я планирую сделать полный рефакторинг кода и исправить все ошибки.
Новая версия появиться, думаю, где-то в конце этого - начале следующего месяца.

Спасибо за понимание.

Здравствуйте, хотелось бы узнать, как скоро состоится плановое обновление? Стоит ли его ожидать в ближайшее время и если нет, то на какой срок оно перенесено?
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Здравствуйте, хотелось бы узнать, как скоро состоится плановое обновление? Стоит ли его ожидать в ближайшее время и если нет, то на какой срок оно перенесено?
перенесено пока на неопределенный срок
сейчас пока реально нет времени
*

Mitriy-Bug

  • Захожу иногда
  • 90
  • 1 / 0
  • Верстка сайтов на Joomla
Добрый день. Не могу никак понять в чем проблема. У меня стоит Joomla! 3.4.0 Stable и модуль smfaq 1.7.3.2. Тестирую работу модулей сначала на Denwer. При попытке написать вопрос через форму на сайте, вылезает значек отправки и крутиться бесконечно, а комментарий и вовсе не реагирует на нажатие отправить. В чем может быть проблема? Боюсь пока ставить этот модуль на основной сайт.
P.S. Если полностью не заполнять поля в форме отправки вопроса и нажать "отправить", то происходит тоже самое - "Бесконечно крутиться значек отправки", хотя по идее должны быть ошибки ибо основные поля не заполнены. Может проблема Denwer (OpenServer) или я что-то незнаю?
Прошу помощи в этой проблеме, необходимо создать удобный FAQ, а по функционалу этот модуль подходит более чем.
Тоже самое, версия Joomla 3.4.1/
Компонент отличный, на сайте расширений Joomla ничего подходящего нет. Но не работает на последних версиях. очень ЖАЛЬ.
В ошибках посмотрел, выдает такую ошибку в скрипте smfaq.js
Код
SyntaxError: expected expression, got ')'
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
Добрый день! Есть возможность в JS поменять скорость раскрытия вопросов в FAQ (если аккордеон)?

Подскажите пожалуйста, как это сделать.

UPD. Кажется, нашел....

Код
slideSpeed: 10
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Здравствуйте!

Стоит Joomla 3.4.1 и SM FAQ 1.7.3.2.

Сайт: http://georgiynn.ru/voprosy-otvety

Возникает вот такая ситуация при попытке добавить вопрос http://clip2net.com/s/3gjWOKX. Что-то грузится, но вопрос не отправляется. В чём может быть ошибка? Где исправлять надо?
*

Mitriy-Bug

  • Захожу иногда
  • 90
  • 1 / 0
  • Верстка сайтов на Joomla
Предлагаю всем скинуться рублей по 500, чтобы автор сделал нормальный компонент для последней версии Joomla 3.4....

Основные функции которые нужны:
не глючность
сообщение на почту клиента о новом вопросе
сообщение на почту тому кто задал вопрос что его вопрос получен (не обязательно)
быстрая модерация (желательно)
после публикации ответа - сообщение на почту тому кто задал вопрос. что его вопрос опубликован на сайте
вот вроде и все функции
*

zeus07

  • Давно я тут
  • 723
  • 9 / 0
Предлагаю всем скинуться рублей по 500, чтобы автор сделал нормальный компонент для последней версии Joomla 3.4....

Основные функции которые нужны:
не глючность
сообщение на почту клиента о новом вопросе
сообщение на почту тому кто задал вопрос что его вопрос получен (не обязательно)
быстрая модерация (желательно)
после публикации ответа - сообщение на почту тому кто задал вопрос. что его вопрос опубликован на сайте
вот вроде и все функции

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

eduard246

  • Новичок
  • 2
  • 0 / 0
Вот блин, и я поставил на последнюю Joomla и js, та же песня, вопросы не отправляются.  Время зря потерял. Надо написать на раздаче SM FAQ, что не поддерживает последнюю версию Joomla! Может кто подскажет адекватную альтернативу?
*

alzahar

  • Новичок
  • 6
  • 0 / 0
Присоединяюсь к просьбе форумчан к автору Компонент не работает с последней Joomla. А компонент очень нужен.
*

icom

  • Давно я тут
  • 830
  • 202 / 4
у кого не отправляло вопросы в последней Joomla, нужно в файле
components/com_smfaq/controller.php все utf8_strlen заменить на mb_strlen

чтоб приходили уведомления на email нужно в файле /components/com_smfaq/models/category.php
$emails = $db->loadResultArray();
поменять на
$emails = $db->loadColumn();
в настройках компонента указать права нужным пользователям, если пишет Унаследовано, то выбрать Разрешено
*

angelion

  • Новичок
  • 5
  • 0 / 0
При отправке вопроса не пишет что вопрос отправлен колесо прокручивается и форма с вопросом остается как будто вопрос не отправлен как исправить подскажите Joomla 3.4.1 SM FAQ 1.7.3.2 PHP 5.4.39-0+deb7u2
*

icom

  • Давно я тут
  • 830
  • 202 / 4
это пробовали?
у кого не отправляло вопросы в последней Joomla, нужно в файле
components/com_smfaq/controller.php все utf8_strlen заменить на mb_strlen

чтоб приходили уведомления на email нужно в файле /components/com_smfaq/models/category.php
$emails = $db->loadResultArray();
поменять на
$emails = $db->loadColumn();
в настройках компонента указать права нужным пользователям, если пишет Унаследовано, то выбрать Разрешено
*

shiftDELET

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Добрый день,

SM FAQ 1.7.2 | J 2.5.28

подскажите как достать базу e-mail тех кто оставлял вопросы?
*

Владимир999

  • Захожу иногда
  • 106
  • 1 / 0
Сайт двуязычный.
Версия Joomla 3.4.3
SM FAQ версия 1.7.3.2
Пункт меню так же двуязычный(пробовал удалять пункт совторым языком, не помогло) com_smfaq > Список вопросов в категории
При переходе по ссылке:
Код
Unknown column 'i.language' in 'on clause' SQL=SELECT c.id, c.asset_id, c.access, c.alias, c.checked_out, c.checked_out_time, c.created_time, c.created_user_id, c.description, c.extension, c.hits, c.language, c.level, c.lft, c.metadata, c.metadesc, c.metakey, c.modified_time, c.note, c.params, c.parent_id, c.path, c.published, c.rgt, c.title, c.modified_user_id, c.version, CASE WHEN CHAR_LENGTH(c.alias)!= 0 THEN CONCAT_WS(':', c.id, c.alias) ELSE c.id END as slug,COUNT(i.`id`) AS numitems FROM dvar_categories as c LEFT JOIN dvar_categories AS s ON (s.lft <= c.lft AND s.rgt >= c.rgt) OR (s.lft > c.lft AND s.rgt < c.rgt) LEFT JOIN (SELECT cat.id as id FROM dvar_categories AS cat JOIN dvar_categories AS parent ON cat.lft BETWEEN parent.lft AND parent.rgt WHERE parent.extension = 'com_smfaq' AND parent.published != 1 GROUP BY cat.id) AS badcats ON badcats.id = c.id LEFT JOIN `dvar_smfaq` AS i ON i.`catid` = c.id AND i.published = 1 AND (i.language = '*' OR i.language = 'ru-RU') WHERE (c.extension='com_smfaq' OR c.extension='system') AND c.published = 1 AND s.id=75 AND badcats.id is null GROUP BY c.id, c.asset_id, c.access, c.alias, c.checked_out, c.checked_out_time, c.created_time, c.created_user_id, c.description, c.extension, c.hits, c.language, c.level, c.lft, c.metadata, c.metadesc, c.metakey, c.modified_time, c.note, c.params, c.parent_id, c.path, c.published, c.rgt, c.title, c.modified_user_id, c.version ORDER BY c.lft 
Сталкивался кто то с проблемой?
*

agasfer

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
  • Жить интересно!
Есть вопрос. Может, кто-то уже столкнулся и справился.

Сборка сайта производилась на Joomla 3.4.1. Компонент SMFaq нормально работал. Сегодня, сразу после обновления до Joomla 3.4.3, клик по пункту меню, ведущему на страницу с вопросами, вызывает страницу 404 и сообщение:   

Код
Unknown column 'i.language' in 'on clause' SQL=SELECT c.id, c.asset_id, c.access, c.alias, c.checked_out, c.checked_out_time, c.created_time, c.created_user_id, c.description, c.extension, c.hits, c.language, c.level, c.lft, c.metadata, c.metadesc, c.metakey, c.modified_time, c.note, c.params, c.parent_id, c.path, c.published, c.rgt, c.title, c.modified_user_id, c.version, CASE WHEN CHAR_LENGTH(c.alias)!= 0 THEN CONCAT_WS(':', c.id, c.alias) ELSE c.id END as slug,COUNT(i.`id`) AS numitems FROM tfmde_categories as c LEFT JOIN tfmde_categories AS s ON (s.lft <= c.lft AND s.rgt >= c.rgt) OR (s.lft > c.lft AND s.rgt < c.rgt) LEFT JOIN (SELECT cat.id as id FROM tfmde_categories AS cat JOIN tfmde_categories AS parent ON cat.lft BETWEEN parent.lft AND parent.rgt WHERE parent.extension = 'com_smfaq' AND parent.published != 1 GROUP BY cat.id) AS badcats ON badcats.id = c.id LEFT JOIN `tfmde_smfaq` AS i ON i.`catid` = c.id AND i.published = 1 AND (i.language = '*' OR i.language = 'ru-RU') WHERE (c.extension='com_smfaq' OR c.extension='system') AND c.published = 1 AND s.id=109 AND badcats.id is null GROUP BY c.id, c.asset_id, c.access, c.alias, c.checked_out, c.checked_out_time, c.created_time, c.created_user_id, c.description, c.extension, c.hits, c.language, c.level, c.lft, c.metadata, c.metadesc, c.metakey, c.modified_time, c.note, c.params, c.parent_id, c.path, c.published, c.rgt, c.title, c.modified_user_id, c.version ORDER BY c.lft

Попутно: на нескольких сайтах даже после обновления компонент продолжает нормально работать (даже с абсолютно той же комплектацией и на тех же фреймворках).

В конечном счёте, вопрос - как пофиксить? Причины бага интересны, но это не самое важное.
*

agasfer

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
  • Жить интересно!
Отвечу сам себе. Кстати, всё оказалось гораздо хуже: компонент умудрился "положить" весь сайт целиком.

Час прошёл в "поисках виноватых".
На всякий случай прошёлся по всему чеклисту работ, отключил всё подозрительное, в том числе SMFaq.
Не сработало.
Сайт восстановился сразу же после деинсталляции компонента SMFaq (повторю, простое отключение компонента не помогло).

Прошу уважаемого маэстро SmokerMan'а принять во внимание. Всем - наилучшие пожелания.
  
« Последнее редактирование: 12.07.2015, 20:59:50 от agasfer »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

WT Telegram bot - отправка данных из Joomla в Telegram-бота

Автор sergeytolkachyov

Ответов: 4
Просмотров: 2822
Последний ответ 01.08.2025, 09:26:57
от sergeytolkachyov
Модуль вывода новостей. Joomla 3.x

Автор fbr

Ответов: 54
Просмотров: 28624
Последний ответ 22.07.2025, 10:13:22
от fbr
JL Like - Социальные кнопки для Joomla (новый взгляд)

Автор zikkuratvk

Ответов: 636
Просмотров: 106579
Последний ответ 07.07.2025, 11:00:34
от zikkuratvk
Плагин для закрытия ссылок в Joomla 3 - noExternalLinks

Автор buyanov

Ответов: 65
Просмотров: 18858
Последний ответ 06.04.2025, 02:51:35
от azm1n
SW JProjects - Менеджер цифровых проектов для Joomla! CMS™

Автор Septdir

Ответов: 59
Просмотров: 9034
Последний ответ 24.03.2025, 13:06:54
от sergeytolkachyov