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

Леон

  • Захожу иногда
  • 332
  • 4 / 0
Здравствуйте. Мучаю шаблон SJ Time от SmartAddons, вот демо: http://demo.smartaddons.com/templates/joomla3/sj-time/

Большая часть материалов и модулей в шаблоне работают на К2.

К примеру, в центре шаблона есть модуль с вкладками "Tags", в нем отображается 2 последних материала, блога категории с маленькими картинками. Открываю админку, компоненты, К2, материалы, нахожу по заголовку материал который выводится в модуле "Tags". Меняю текст или дату создания, все прекрасно меняется и при обновлении гл.страницы также все в порядке. Не получается сменить картинку. Вот скрин как выглядит вложение изначально:

Спойлер
[свернуть]

Как видите, там показывает маленькую картинку, и на сайте она везде выводится как маленькая. Далее я нажимаю "Выбрать файл", выбираю пусть даже тоже самое изображение. Сохраняю страницу и вот что получается:

Спойлер
[свернуть]

Картинка загружается большой. И в модуле "Tags" она также становится огромной. И блог категории с этими материалами, все нормальные, а эта новость в которой я заменил картинку становится огромной из-за изображения.

Может кто помочь с этим?
*

Леон

  • Захожу иногда
  • 332
  • 4 / 0
Re: K2, слишком большие изображения
« Ответ #1 : 17.06.2015, 22:36:08 »
Как только я добавляю картинку в материал K2 и нажимаю кнопку "сохранить" в лог ошибок на сервере сразу падают строки:
Код
[Wed Jun 17 22:28:51 2015] [error] [client 5.139.120.90] Warning: , referer: http://site14.worldofsites.ru/administrator/index.php?option=com_k2&view=item&cid=260
[Wed Jun 17 22:28:51 2015] [error] [client 5.139.120.90] using regular magic file `/usr/share/misc/magic', referer: http://site14.worldofsites.ru/administrator/index.php?option=com_k2&view=item&cid=260
[Wed Jun 17 22:28:51 2015] [error] [client 5.139.120.90] , referer: http://site14.worldofsites.ru/administrator/index.php?option=com_k2&view=item&cid=260
[Wed Jun 17 22:32:26 2015] [error] [client 5.139.120.90] /etc/magic, 0: , referer: http://site14.worldofsites.ru/administrator/index.php?option=com_k2&view=item
[Wed Jun 17 22:32:26 2015] [error] [client 5.139.120.90] Warning: , referer: http://site14.worldofsites.ru/administrator/index.php?option=com_k2&view=item
[Wed Jun 17 22:32:26 2015] [error] [client 5.139.120.90] using regular magic file `/usr/share/misc/magic', referer: http://site14.worldofsites.ru/administrator/index.php?option=com_k2&view=item
[Wed Jun 17 22:32:26 2015] [error] [client 5.139.120.90] , referer: http://site14.worldofsites.ru/administrator/index.php?option=com_k2&view=item

На сайте никаких ошибок не видно, пишет "Changes to Item saved", только вот картинка сохраняется огромной. Может кто помочь с решением проблемы? Версия PHP на хостинге 5.4
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: K2, слишком большие изображения
« Ответ #2 : 17.06.2015, 22:59:13 »
да поставьте плагин Мавика и при уменьшении не будет.
поздно разбирать проблему и код.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

donchanka

  • Новичок
  • 4
  • 0 / 0
Re: K2, слишком большие изображения
« Ответ #3 : 14.07.2015, 16:48:58 »
SJ Time тоже не могу осилить. Нужно поменять формат даты в К2. Переопределение констант не работает. Залезла в код. Тоже не помогло. Буду благодарна за любую помощь
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: K2, слишком большие изображения
« Ответ #4 : 14.07.2015, 21:29:24 »
Ну уважаемые.По всем правилам, мне нужно узнать, где же вы это шаблон взяли то?  ::)
***
Лично мне, чтоб ответить, а я часто отвечаю, устанавливая, занимает время, поэтому и не занимайте своё и моё и ответьте, если варез, то проблема может в "сп..." шаблоне, а не в самом шаблоне?!
« Последнее редактирование: 14.07.2015, 21:32:53 от vipiusss »
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

Леон

  • Захожу иногда
  • 332
  • 4 / 0
Re: K2, слишком большие изображения
« Ответ #5 : 14.07.2015, 22:00:21 »
У меня уже не актуально, мы решили забить на этот шаблон. Но как я вроде понял, проблема с картинками была в том, что хостер не поддерживал какое-то расширение в php. Остальные проблемы так и не разобрался.
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: K2, слишком большие изображения
« Ответ #6 : 14.07.2015, 22:03:47 »
У меня уже не актуально, мы решили забить на этот шаблон.
Леон, я заметил, ты как хирург на 1-вом курсе, не то отрезал, фиг с ним, завтра другой пациент будет...
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

Леон

  • Захожу иногда
  • 332
  • 4 / 0
Re: K2, слишком большие изображения
« Ответ #7 : 15.07.2015, 00:04:33 »
Нет ну правда, с картинками косяк, правый модуль режет заголовки у новостей, JoomGallery и многие другие модули не дружат с этим шаблоном - остается только внешний вид, который мы подумали, что сможем повторить на своем шаблоне. В общем итоге я промучился с ним чуть более недели, а проблем становилось только больше и больше. Сейчас на новом шаблоне мы почти повторили вид меню, вкладки, слайдер и самое главное, что нет всех прошлых ошибок. Конечно пока вид у нас хуже чем Times, но проблем с работой пока нет, все плавно движется вперед.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как заменить заглушку изображения в к2?

Автор sergspb

Ответов: 0
Просмотров: 2807
Последний ответ 13.10.2022, 14:21:02
от sergspb
Изображения в K2

Автор portos

Ответов: 68
Просмотров: 31605
Последний ответ 10.12.2020, 00:45:57
от Divn
Можно ли безболезненно добавить загрузку еще одной миниатюры, изображения?

Автор designerandrey

Ответов: 0
Просмотров: 1546
Последний ответ 16.04.2019, 20:22:13
от designerandrey
Всплывающее окно изображения в материале

Автор Дмитрий 1989

Ответов: 6
Просмотров: 1918
Последний ответ 12.03.2018, 21:20:55
от Дмитрий 1989
Интегрировать в k2store вывод 3 d изображения в фотографии товара

Автор denia85

Ответов: 2
Просмотров: 1296
Последний ответ 15.11.2017, 14:30:44
от denia85